Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 在哪里最好添加确认对话框弹出窗口_Jquery_Asp.net_Asp.net Mvc_Asp.net Mvc 3_Jquery Ui - Fatal编程技术网

Jquery 在哪里最好添加确认对话框弹出窗口

Jquery 在哪里最好添加确认对话框弹出窗口,jquery,asp.net,asp.net-mvc,asp.net-mvc-3,jquery-ui,Jquery,Asp.net,Asp.net Mvc,Asp.net Mvc 3,Jquery Ui,我正在使用ASP.NET MVC 4和最新版本的jqueryui和Fluent验证来处理服务器端验证 在提交表单之前,我正在尝试使用jQuery对话框作为确认弹出窗口。用户应单击“是”提交表单,或单击“取消”保留表单 我已经在谷歌上搜索并尝试了提供的样本,但我无法让它工作。我试过在按钮的点击事件中这样做,但没有成功。现在我正在尝试将其添加到表单提交中 我的HTML标记: <button id="SaveButton" type="submit">Save</button>

我正在使用
ASP.NET MVC 4
和最新版本的
jqueryui
Fluent验证
来处理服务器端验证

在提交表单之前,我正在尝试使用
jQuery对话框
作为确认弹出窗口。用户应单击“是”提交表单,或单击“取消”保留表单

我已经在谷歌上搜索并尝试了提供的样本,但我无法让它工作。我试过在按钮的点击事件中这样做,但没有成功。现在我正在尝试将其添加到表单提交中

我的HTML标记:

<button id="SaveButton" type="submit">Save</button>

<div id="dialog-confirm" title="Save Customer?">
     <p><span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>Are you sure you want to save this customer?</p>
</div>
我使用上述方法得到的错误是:

Object doesn't support this property or method
…并在
$('form').sumbit()上中断

我如何让它正常工作?在哪里最好添加这个?在按钮上还是在提交表单时?两者都有


注意:答案需要基于
jQuery
jQuery对话框
控件。

您可以尝试以下操作:在视图中:@Html.ActionLink(“Delete”,“DeleteEmp”,new{id=item.id},new{onclick=“return deleteeconfirm()”})

在脚本中:函数DeleteConfirm(){if(确认(“您确定要删除记录”))返回true;否则返回false; }

在控制器中:public ActionResult DeleteEmp(int id){var empDelete=(从dbml.M_Employees中的emp开始,其中emp.id==id选择emp)。Single();dbml.M_Employees.DeleteOnSubmit(empDelete);dbml.SubmitChanges();return RedirectToAction(“Index”);}

试试这个:

$('#dialog-confirm').dialog({
      autoOpen: false,
      resizable: false,
      modal: true,
      buttons: [
                {
                    text : 'Save',
                    click : function () {
                        $('form').submit();
                    }
                },
                {
                    text : 'Cancel',
                    click : function () {
                         $(this).dialog('close');
                    }
                }
            ]
      }
 });

答案需要与jQuery对话框控件有关。这不是名为
sumbit
的函数;您是否正在进行
submit()
?还值得注意的是,jQuery UI对话框是非阻塞的……为什么不使用asp.net mvc 4的验证呢?您可以将局部视图添加到对话框中,然后使用MVC4的验证表单。
$('#dialog-confirm').dialog({
      autoOpen: false,
      resizable: false,
      modal: true,
      buttons: [
                {
                    text : 'Save',
                    click : function () {
                        $('form').submit();
                    }
                },
                {
                    text : 'Cancel',
                    click : function () {
                         $(this).dialog('close');
                    }
                }
            ]
      }
 });