2012-05-02 51 views
-1

够简单,为什么heck不工作...? jQuery 1.6.2也包含在头部以上。这不是触发验证,现在它只是直接通过,并说“已提交”,甚至没有验证字段。jQuery验证插件 - 挑战你解决这个问题(帮助?)

在头验证:

<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js" type="text/javascript"></script> 
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/additional-methods.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
$("#newcontract").validate({ 
    rules: { 
     rec_name: { 
      required: true 
     } 
    }, 
    messages: { 
     rec_name: { 
      required: 'You need to enter a contract receiver.' 
     } 
    }, 
    submitHandler: function() { 
    alert("Submitted!"); } 
}); 
}); 
</script> 

形式命名newcontract,所以我缺少什么:

<form name="newcontract" id="newcontract" method="post"> 
    <input type="text" name="rec_name" id="rec_name" size="42" class="required"/> 
    <tr><td class="submit" colspan="3"><input type="submit" name="savelisting" id="savelisting" value="Save New Contract" /></td></tr> 
</form> 

这是怎么回事?它不会验证此文本字段。帮帮我!!

更新:上面的代码按预期工作。这个问题在于我删除了包装表单的表格,而验证插件跳过了表单。只要我把表格移到我的HTML表格之外,它就可以正常工作。

+0

浏览器调试器中的任何Javascript错误? –

+0

不,图像上存在一些404错误,但与这些错误无关。 –

+0

除非你有'required'定义的某处'rec_name:required'应该是'rec_name:'required'' – Musa

回答

3

不良使用tr标签。

<form name="newcontract" id="newcontract" method="post"> 
<input type="text" name="rec_name" id="rec_name" size="42" class="required"/> 
<p class="submit"><input type="submit" name="savelisting" id="savelisting" value="Save New Contract" /></p> 
</form> 

第一步,制作正确的html格式。

+0

同意标记不好,但我不认为这是问题。 –

+0

我掏出一堆其他的HTML,向你展示你需要什么。 HTML不是问题,它在整个文件中非常干净和美观(太大而不能粘贴) –

+0

它适用于我后的变化。你有没有尝试其他的jQuery版本? –