$('selector')。validation()似乎是为“输入”类型按钮而不是“按钮”类型构建的。如何使用表单中的按钮类型?
@using(Html.BeginForm(new {id="TheForm"}))
{
// code here
<input id="TheButton" type="button">
}
JQuery的:
$(document).ready(function() {
$("#TheForm").validate({
rules: {
"AuditDoc.Title": {
required: true
}
}
});
$("#TheButton").click(function() {
});
});
使用这个基本思想,如何让jquery验证使用按钮而不是提交类型按钮?我已经看到了当使用提交类型不满足规则时JQuery自动显示错误消息的示例,但它似乎不适用于按钮类型。我很感激任何建议!
答案 0 :(得分:7)
$(document).ready(function () {
$("#TheForm").validate({
rules: {
"AuditDoc.Title": {
required: true
}
}
});
$("#TheButton").click(function () {
if (!$("#TheForm").validate()) { // Not Valid
return false;
} else {
$("#TheForm").submit()
}
});
$('#btnReset').live('click', function (e) {
//var $validateObj = $('#formId');
//Or
var $validateObj = $(this).parents('form');
$validateObj.find("[data-valmsg-summary=true]").removeClass("validation-summary-errors").addClass("validation-summary-valid").find("ul").empty();
$validateObj.find("[data-valmsg-replace]").removeClass("field-validation-error").addClass("field-validation-valid").empty();
});
});
答案 1 :(得分:5)
$(document).ready(function(){
$("#myform").validate();
$("#byuttion").click(function() {
if($("#myform").valid())
{
$("#myform").submit();
}
else
{
return false;
}
});
});
答案 2 :(得分:4)
一种hackish方式可能是:
$("#TheButton").click(function() {
$("#TheForm").submit()
});
答案 3 :(得分:2)
除了不支持submit方法外,它与普通输入的工作原理基本相同。 preventDefault只是阻止页面执行默认请求。
$("#TheButton").click(function(event) {
event.preventDefault(); //or return false
getData();
});