【问题标题】:JQuery, JS Confirm form submission not workingJQuery,JS确认表单提交不起作用
【发布时间】:2013-09-17 18:10:25
【问题描述】:
    jQuery("form.areyousure").submit(function(e){
    if (!confirm("Are you sure?")){
        e.preventDefault();
        return;
    } else {
        jQuery("form.areyousure").submit(this);
    }
}); 

此页面上有几个表格,class=areyousure。我只需要一个简单的检查。弹出确认对话框,但在“确定”时,我被重定向到 /admin/undefined。我尝试过在提交()中使用和不使用“else”,使用和不使用“this”。也试过了:

} else {
this.submit();
    }

这被包裹在一个 jQuery(document).ready(function(){.

这是表格。几个项目中的每一个都有一个删除和清除表单。因此,目前页面上只有 2 个表单,但可能有多个 X 2。

<form method="post" id="landingpagessettings" class="areyousure" >
<input type="hidden" value="1" name="dbid">
<input type="submit"  value="Clear" name="e-button">
<input type="hidden" name="e-action" value="sth" />
</form>

【问题讨论】:

  • &lt;form&gt; 操作属性中写了什么?此外,您不必在事件处理程序中调用 submit() - 当您确实想提交表单时不要调用 e.preventDefault()
  • 发布一个样本&lt;form&gt;,它没有按您的预期工作。
  • "I am redirected to /admin/undefined" - 不是通过发布的代码你不是。提交的表单动作是什么? "There are a couple forms on this page with class=areyousure." - 在这种情况下,我希望 else 块的行为不可靠。您可能只想提交一份表格,而不是同时提交所有表格。

标签: jquery forms submit form-submit


【解决方案1】:

不妨试试这样的:

$("form").submit(function() {
  if (!confirm("Are you sure?"))
    return false;
  else
    return true;
}

另外,action 的属性可能是正常的(例如 /submit)。检查表单 ID。脚本必须在表单 html 代码之后。

【讨论】:

  • 它到底有什么帮助,以及这比普通的 return confirm('Are you sure?') 更好吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-20
  • 2011-02-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多