0
我有一个简单的表单。它有一个字段和一个提交按钮。 我隐藏了提交按钮。提交按钮实际上是以一个锚点 标记触发的,该标记调用一个使用jQuery获取元素并执行 click()的javascript方法。这工作正常,表单帖子和记录已成功写入数据库。xVal和jQuery提交按钮
所以现在我添加了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;
}
这实际上相当多做到了。我不得不改变它一点,但你的想法是非常正确的。我不得不添加一个表单()来使其工作。 这是我做的... function addManufacturer(){ var valid = $(document.forms [0])。validate()。form(); if(valid){('#btnAdd')。click(); } } – Gabe 2009-11-30 21:36:01