2

HTML テーブルの div 要素に編集可能ファイルを適切に添付して起動する次のコードがあります。テーブルは ajax 呼び出しによって生成されます。editable を使用してバックエンドを更新できますが、編集中の HTML テーブル セルは更新されませんか? そのためには、ajax クエリを再実行して、バックエンドからの新しい値でテーブルを再表示する必要があります。だから私の問題は本質的に、送信が成功した後に新しい値を表示することです。

私の問題に対処するために、コールバック関数を使用することを考えましたが、コンソールログのコールバック関数で値と設定が空であることがわかりました...

どうすれば問題を解決できますか?

$(".edit_area").editable('/cgi-bin/mycgiscript.cgi', {
event       : 'dblclick',       //or dblclick
type        : 'textarea',
rows        : 2,
cols        : 30,
cancel      : 'Cancel',
submit      : 'Save',
indicator   : '<img src="images/indicator.gif">',
placeholder : 'Double Click to enter text',
tooltip     : 'Double Click to edit...',
name        : 'name',
id      : 'id',
callback    : function(value, settings) {
console.log('value='+value);
console.log('settings='+settings);
console.log('callback executed='+value);
return(value);
}
});

編集したテキストを「保存」した後なので、コールバックを使用しました。編集したテキストは HTML ページに表示されません。バックエンド データベースに適切に保存されています。バックエンド サーバーから更新された情報を表示する ajax 呼び出しを再実行しました...

editable は、ajax 呼び出しから生成されている html テーブルの div にアタッチされています。それが役に立ったら...

4

2 に答える 2

2

解決済み: 動作方法: 関数の ajax 呼び出しは、コールバック関数を使用して解析できる何かを返す必要があります。だから私のajax呼び出しがデータを吐き出し始めたら。私は良かった。

txすべて。

于 2012-10-04T21:08:11.680 に答える
0

はい。AJAX 関数は、編集したテキストエリアで使用される文字列を返す必要があります。

これを使用すると、AJAX 呼び出しは成功/失敗フラグと戻りメッセージの 2 つを返します。戻りメッセージをどこかに表示して、操作が成功したかどうかをユーザーに通知します。次に、コールバック関数を使用して、ターゲット テキスト領域を実際に更新します。

于 2014-07-16T20:58:09.337 に答える