1

我坐在这里,摆弄了多个不同的例子,但没有一个工作。我要做的是采用一个具有三个按钮(保存、取消和删除)的表单。删除按钮需要提出一个提示,询问用户是否确定。这是我到目前为止的代码......并尝试了多个示例......没有一个对我有用。

<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');

            });

编辑: no 按钮确实有效,但是 yes 按钮现在正在提交,但是提交时没有发送任何帖子数据。

更新:这就是我完全解决问题的方法:

$(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 回答