ユーザーがダイアログが表示される新しい時間にジョブをドラッグすると、AJAX が php コンテンツをリロードし、最後にドラッグ可能な要素を再初期化して、ジョブを再度ドラッグできるようにします。
私の質問は、関数を呼び出すさまざまな方法をすべて過小評価していないことが原因である可能性があります。
私の質問は次のとおりです。以下のこのソリューションを呼び出しを減らすことはできますか?
コードを削減し、「階層」/組み込みプロパティを適切に使用するために、「二重」呼び出しを回避していることを確認したいと思います。
Drag{
---- Dialog{
------- success{ AJAX{ reload-function{ initialize } }//end AJAX ---- } //end success
------- cancel { AJAX{ reload-function{ initialize } }//end AJAX ---- } //end cancel
--- }
}
以下は、現在のつなぎ合わせたソリューションです。動作しています。
$("#dialog-mjob").dialog({
autoOpen: true,
resizable: true,
modal: true,
buttons: {
"Modify": function () {
$(this).dialog("close");
$.ajax({
type: "POST",
url: "get-event.php",
data: $('#mod-event-form').serialize(),
success: function (data) { }
});
},
Cancel: function () {
$(this).dialog("close");
$.ajax({
type: "POST",
url: "get-event.php",
data: $('#mod-event-form').serialize(),
success: function (data) {
$('#cal-inner').remove();
$('#cal').load('timeline-inner.php', function () {
$(".draggable").draggable({
//revert: true,
revert: "invalid",
//helper: "clone",
cursor: "hand",
grid: [44, 0],
axis: "x",
handle: "span",
cursor: "move",
stop: function (ev, ui) {
changePrompt($(this).attr('id'));
}
});
});
}
}); // end ajax
} // end cancel button
} // end buttons
}); // end dialog