タイトルがわかりにくいので申し訳ありませんが、それを説明するためのより良い方法を見つけることができませんでした。
状況は次のとおりです。
関数overview()では、ダイナミックhtmlとともにAJAX呼び出しでデータを取得します。そのAJAX成功コールバック内で、新しいhtmlに対して特定のハンドラーを実行します。それらのハンドラーの1つで、別のAJAX呼び出しを投稿しています。
ここで私の問題があります。更新されたデータを取得するために、2番目のAJAX成功コールバックで最初のAJAX呼び出しをリロードしたいと思います。どうすればよいですか?
ありがとう
編集:要求に応じて、ここに私のコードがあります(簡略化)
function overview() {
var dataString = '...';
$.ajax({
type: 'POST',
url: 'get-data.php?',
cache: false,
data: dataString,
success: function(data) {
$('table.table-overview tr.table-heading').after(data);
$('tr.new-tr span.status').click(function() {
var dataString = '...';
$.ajax({
type: 'GET',
url: 'change-status.php?',
cache: false,
data: dataString,
success: function(response) {
if(response == 'saved') {
overview();
}
}
});
});
}
});
}
解決済み:試行錯誤の末、.click()ハンドラーを.live('click')に置き換えると、機能するようになりました。