1

私はここに座って、複数の異なる例をいじりましたが、どれもうまくいきません。私がやろうとしているのは、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();
            });
        });
4

1 に答える 1

0

temaplteEdit代わりにセレクターにスペルミスがありますtemplateEdit

ボタンの名前を名前に変更する必要がありますsubmit

<input type="submit" name="save" value="submit" />

それから電話する

$('#templateEdit').get(0).submit();

デモ:フィドル

また

$('#templateEdit').off('submit').submit();

デモ:フィドル

アップデート:ここに画像の説明を入力

于 2013-09-24T02:51:29.570 に答える