题
我有一个简单的形式。它有一个字段和一个提交按钮。 我隐藏提交按钮。提交按钮实际上是与锚触发 标签调用使用jQuery来获取元素并执行JavaScript的方法 点击()。这工作得很好,形式职位和记录成功地写入数据库。
所以,现在我加入XVAL进行验证。我试图在简单的客户端验证添加。
当我点击的锚标记它不工作。不过,如果我取消隐藏的提交按钮,并尝试与发帖的形式,而不是使用锚标记,就是调用JS方法,它的工作。所以基本上我试图找出它为什么当我使用js的方法来触发提交按钮的点击不起作用。
任何格兰德想法?谢谢了!
下面有一些代码...
<div id="manufacturerButtons" class="moduleRow">
<%= Html.ActionImage(Url.Content("~/Content/Icons/bullet_go_back.png"), "Back To Admin", "Admin", "Admin")%>
| <a class="actionImage" href="javascript: addManufacturer();">
<img border="0" src="<%= Url.Content("~/Content/Icons/accept.png")%>"> <span>Add
Manufacturer </span></a>
</div>
<div class="moduleContent">
<div id="manufacturerContainer">
<div class="moduleRow">
<h3>
New Manufacturer</h3>
</div>
<div class="moduleRow">
<% Html.BeginForm("NewManufacturer", "Admin", FormMethod.Post); %>
<table class="noBorder" border="0" cellpadding="0" cellspacing="0">
<tr>
<td style="width: 125px">
<h6>Name:</h6>
</td>
<td>
<%= Html.TextBox("Name") %>
</td>
</tr>
<tr style="display: none;">
<td>
</td>
<td>
<input type="submit" id="btnAdd" name="btnAdd" />
</td>
</tr>
</table>
<% Html.EndForm(); %>
<%= Html.ClientSideValidation<EquipmentManufacturer>() %>
</div>
</div>
使用Javascript:
function addManufacturer() {
//$('form').submit(); // doesnt work when trying to validate either
$('#btnAdd').click();
return true;
}
解决方案
什么你需要做的是触发您的窗体上的jQuery验证。尝试:
$('form').validate();
要在成功验证提交表单,尝试:
$('form').validate({ submitHandler: function(form) { form.submit(); } });
请注意,“形式”应为您的形式是一个有效的jQuery选择...
不隶属于 StackOverflow