【问题标题】:How to trigger form validation on checkout button click如何在结帐按钮单击时触发表单验证
【发布时间】:2015-07-15 12:45:57
【问题描述】:

购物车包含 html5 数量验证,如下面的代码所示。 如果点击刷新按钮,浏览器会显示错误信息并取消提交。

如果在结帐按钮中单击,则调用结帐 url 而无需验证。

如果按下 Chekcoutr 按钮并取消结帐按钮,如何触发表单验证 如果表单无效,请按。

可以对 Checkout 按钮使用 post 请求或重构代码以使用多个 如果有帮助,请提交按钮。

使用Bootstrap 3、jquery、ASP.NET MVC3、Mono。

<form action="/ShoppingCart/Update">
<input type="hidden" value='TOUR33' name='product' />
<input name="quantity" type="number" value="48000" max='1536' min="0" step="24" />
<input type='submit' value='Refresh' />
</form>
<a class="btn btn-success" href="/Checkout/Address">Checkout</a>

【问题讨论】:

  • 难道不能保留&lt;input type="submit"/&gt;而不是&lt;a&gt;吗?
  • Andrus,您在 Mono 中使用哪个网络服务器?只是好奇。
  • @GuruprasadRao 如果使用第二个提交按钮,如何调用/Checkout/Address?对于此 url,无需发布表单数据。如果这使解决方案更容易,可以发布表单数据
  • 只需将您的提交按钮保留在表单中,然后单击它编写一个事件处理程序来处理有效和无效form
  • 有问题的代码在元素中包含按钮。这不是提交按钮。表单中代码中的提交按钮可以正常工作

标签: jquery asp.net-mvc html forms twitter-bootstrap


【解决方案1】:

我猜你应该为此使用 js:

$('a.btn-success').click(function () {
   if ($("form").valid()) //trigger your form validation
   {
      return true;
   }
      return false;
 });

【讨论】:

  • 我试过了,但出现了javascript错误Uncaught TypeError: $(...).valid is not a function如何解决?
  • @Andrus 呃,你使用服务器端验证?或者什么样的验证?
  • 没有。我只使用这个答案中的代码。未知原因 $("form").valid() 未定义
  • 我也试过 &lt;form id='cart-form' ... &gt;$('#cart-form').valid() 但问题仍然存在
  • 我不明白你使用什么样的验证。默认情况下,MVC 在项目中有 jquery.validate。你可以阅读你的错误here。你应该只添加脚本
猜你喜欢
  • 1970-01-01
  • 2017-06-06
  • 1970-01-01
  • 2023-04-11
  • 2012-09-12
  • 2019-11-28
  • 1970-01-01
  • 1970-01-01
  • 2016-12-10
相关资源
最近更新 更多