私はここに座って、複数の異なる例をいじりましたが、どれもうまくいきません。私がやろうとしているのは、3 つのボタン (保存、キャンセル、削除) を持つフォームを作成することです。削除ボタンは、ユーザーに確認するプロンプトを表示する必要があります。ここに私がこれまでに持っているコードがあります...そして複数の例を試しました...どれも私のために働いていません。
<form id="templateEdit" method="post" action="/admin/template/{{ var temp }}/{{ var page }}">
<div class="control right"><input type="submit" name="save" value="submit" /><input type="submit" name="cancel" value="cancel" /><input type="submit" name="delete" id="delete" value="delete" /></div>
<textarea name="editor" class="ckeditor">{{ var contents }}</textarea>
</form>
次のコードは、ドキュメント対応の Jquery 関数です。
$("#dialog-confirm").dialog({
resizable: false,
autoOpen: false,
modal: true,
buttons: {
"Yes": function () {
$('#templateEdit').off("submit").submit();
$(this).dialog("close");
},
"No": function () {
$(this).dialog("close");
}
}
});
$('#templateEdit').submit(function (event) {
event.preventDefault();
$('#dialog-confirm').dialog('open');
});
編集:いいえボタンは機能しますが、はいボタンは現在送信されていますが、投稿データは送信されていません。
更新:これが私の問題を完全に修正した方法です:
$(document).ready(function(){
$("#dialog-confirm").dialog({
resizable: false,
autoOpen: false,
modal: true,
width: 500,
buttons: {
"Yes": function () {
$("#templateEdit").attr('action', "/admin/templates.php?temp={{ var temp }}&page={{ var page }}&action=delete");
$('#templateEdit').get(0).submit();
$(this).dialog("close");
},
"No": function () {
$(this).dialog("close");
}
}
});
$('#delete').click(function (event) {
$("#dialog-confirm").dialog("open");
event.preventDefault();
});
});