Asp.net mvc 在MVC 3中禁用客户端验证”;取消“;提交按钮

Asp.net mvc 在MVC 3中禁用客户端验证”;取消“;提交按钮,asp.net-mvc,asp.net-mvc-3,validation,client-side,Asp.net Mvc,Asp.net Mvc 3,Validation,Client Side,好的,我已经试了几个小时了,需要一些帮助。我试图在MVC3中实现一个页面,该页面有“后退”和“下一步”按钮。单击“上一步”按钮时,我想禁用客户端MVC验证,以便运行我的操作方法并将用户发送到上一个逻辑网页。我试过这个: <script type="text/javascript"> document.getElementById("backButton").disableValidation = true; </script> document.getElemen

好的,我已经试了几个小时了,需要一些帮助。我试图在MVC3中实现一个页面,该页面有“后退”和“下一步”按钮。单击“上一步”按钮时,我想禁用客户端MVC验证,以便运行我的操作方法并将用户发送到上一个逻辑网页。我试过这个:

<script type="text/javascript">
  document.getElementById("backButton").disableValidation = true;
</script>

document.getElementById(“backButton”).disableValidation=true;
这是:

<input type="submit" name="backButton" value="← Back" 
 title="Go back to step 1." disableValidation="true" />


但不管怎样,cilent端验证JavaScript会启动,并且不会让按钮回发帖子。我想,
禁用验证
可能只在MVC 2中有效,我应该在MVC 3中做一些其他的事情,但似乎找不到任何例子。

这个神秘的力量是什么,当你在某个地方发布一个问题时,这个神秘的力量会让答案立即显露出来

在MVC 3中,通过添加类“cancel”来禁用按钮上的客户端验证。在我的例子中:

<input type="submit" name="backButton" value="← Back"
 title="Go back to step 1." class="cancel" />

效果很好。并且也不需要ID属性。如果按钮上有实际的样式类,只需执行以下操作:

<input type="submit" name="backButton" value="← Back"
 title="Go back to step 1." class="style-name cancel" />

验证脚本似乎链接到提交类型
输入
。通过将
cancel
更改为按钮,将跳过验证:

<button type="button" onclick="document.location.href('Index')">Cancel</button>
取消
我用这个按钮

$("button").each(function (elem) {
    var button = $($("button")[elem]);
    button.addClass('cancel');

    if (button.attr('type') == 'submit') {

        button.click(function (e) {
            var validator = button.closest('form').validate();
            validator.cancelSubmit = true;
        });
    }
});

我知道。。。很老的问题。。然而,当我查看时,它是搜索结果的顶部

对于MVC4(和一个按钮),似乎(至少对我来说)答案只是添加formnovalidate=“formnovalidate”

 <button type="submit" class="btn btn-outline-success border-0" formnovalidate="formnovalidate" name="command" value="Back" title="Back">
    <span class="fas fa-arrow-left" aria-hidden="true"></span>
    &nbsp;Back
</button>

返回

我怀疑“mystcal force”在帮助你帮助别人。:)我遇到了类似的问题,你的解决方案很快就出现了。谢谢+1我听过很多次解释,但我最喜欢“橡皮鸭”。这是关于当你自己向他人解释问题时,你如何更好地理解问题。你解释得比你想象的更详细,所以它能让你更好地理解这个问题。一个好的做法是想一想,或者说出来,就好像你在向你想帮助你的人解释一样。你可能会找到答案。“橡皮鸭”来自于把橡皮鸭放在显示器上的人。然后他会告诉橡皮鸭他的问题,有时他会解决它。我认为MVC的全部要点是分离关注点。在这种情况下,这怎么不违反关注点分离?使用CSS实际影响视图的功能?我喜欢它的工作原理,但我觉得使用它很肮脏。仍然会立即弹出客户端验证。。。不理想为了让它与MVC5一起工作,我必须在按钮上添加“formnovalidate”属性。请参阅搜索MVC4中没有的“提交时跳过验证”。它的行为(至少对我来说)与按钮的输入方式相同。