Ich versuche, Jeditable zu verwenden, um einige Inhalte in Textareas inline zu bearbeiten. Ich rufe also die Skriptdateien auf:
<script src="js/jquery.jeditable.js"></script>
<script src="js/jquery.jeditable.autogrow.js"></script>
<script src="js/jquery.autogrow.js"></script>
Dann habe ich eine Funktion, die Daten an den Server senden soll (ich habe die Beispiel-URL beibehalten). Diese Funktion erstellt eine Textarea und erlaubt die Ausgabe:
$(".autogrow").editable("http://www.appelsiini.net/projects/jeditable/php/save.php", {
indicator : "<img src='img/indicator.gif'>",
type : "autogrow",
submit : 'OK',
cancel : 'cancel',
tooltip : "Click to edit...",
onblur : "ignore",
event : "dblclick",
autogrow : {
lineHeight : 16,
minHeight : 32
}
});
Dann habe ich die Daten zu bearbeiten, die HTML-Tags enthalten, weil ich sie speichern muss:
$data = '<div style="color:red">Foo Bar</div>';
echo '<div class="autogrow">'.htmlentities($data).'</div>';
Das "echo" zeigt den "$data"-Inhalt perfekt mit den Tags an, aber wenn ich das DIV inline bearbeiten möchte, wird ein Textbereich erstellt und die folgenden Daten werden in diesem Textbereich angezeigt:
<div style="color:red">Foo Bar<div>
anstelle von:
<div style="color:red">Foo Bar</div>
Wie kann ich die richtigen Zeichen anzeigen?