1

好的,这个问题最初被问得很糟糕。这是更多信息和我的大量代码。此代码背后的想法是一个 aspx 表单,它具有用户输入信息,然后使用提交按钮使用 C# 将代码提交到 mySQL 服务器。当他们忘记输入推销员时,会打开一个对话框,要求他们再次输入推销员。

这是对话框的代码。

<div id="dialog" title="Dialog Title"><asp:label id="lblSalesman" onChange="GetSalesman()" Runat="server" /></div>   //THE ASP:LABEL REFERS TO A DROP DOWN LIST THAT WAS CREATED AND POPULATED BY c#.
   <script type="text/javascript" language="javascript">
       function stopSubmit() {
        $('form').bind('submit', function (event) {
        event.preventDefault();
       });
                             }

      $("#dialog").dialog({
        autoOpen: false,
        modal: true,
        buttons: {
        "Save": function () {

      $('#btnSubmit').click('btnSubmit');   //THIS IS SUPPOSED TO CLICK A BUTTON ON THE ORIGINAL ASPX FORM THAT WILL TRIGGER C# TO SUBMIT THE FORM TO A MYSQL SERVER
      $(this).dialog("close");
         }
        }
      });

      $("#opener").click(function () {
          stopSubmit();                      
          $("#dialog").dialog("open");
      });

   </script>

全部大写是给你们的评论。

此对话框由验证语句触发。如果验证失败,则对话框运行。我把这个,

$('form').bind('submit', function (event) {
        event.preventDefault();

在一个函数中,所以如果这段代码没有运行,那么如果验证成立,我原始表单上的提交按钮仍然有效。这有效地阻止了对话框在触发对话框后重新加载页面。问题是对话框中的SAVE按钮无法运行$'(#btnSubmit').click('btnSubmit'); 因为 event.preventDefault 防止按钮内置的提交不起作用。有什么方法可以撤消 event.preventDefault() 或其他方式来提交表单?

4

3 回答 3

1

<form onsubmit="return false"></form>它会工作

$("#btnSubmit").trigger("click");
于 2013-07-08T18:02:03.540 回答
0

此代码将停止脚本返回服务器。返回 false 停止在客户端执行脚本

$('form').on('submit', function(event){
return false;
});
于 2013-07-08T18:03:14.513 回答
0

对于这个问题的所有困惑,我们深表歉意。对我来说,这确实是一个桃子。我找到了答案。我使用下面的代码允许提交再次工作。

$('form').unbind('submit');

这只是解除绑定

event.preventDefault();

从提交事件。

于 2013-07-11T14:50:13.483 回答