我正在使用jQuery验证器插件http://jqueryvalidation.org/。
我发现我可以使用ID或其名称访问表单中的元素(至少使用Firefox和Chrome)。一种方式比另一种更正确和浏览器兼容吗?或者也许我应该完全做其他事情?
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Testing</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.js" type="text/javascript"></script>
<script src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.13.1/jquery.validate.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
$("#myForm").validate({
submitHandler: function(form) {
console.log('using id',form.myElementID.value);
console.log('using name',form.myElementName.value);
}
});
});
</script>
</head>
<body>
<form id="myForm">
<input type="text" name="myElementName" id="myElementID" />
<input type="submit" />
</form>
</body>
</html>
答案 0 :(得分:0)
因为在input
上某个名称是以某种方式需要的(我不知道文档中有关于此的内容,但如果您想稍后检索它,例如在PHP中,则应该放置{{1}它的属性),我认为通过name
引用你的元素更安全。
如您所见:http://www.javascript-coder.com/javascript-form/javascript-get-all-form-objects.phtml,本机API使用该名称来引用表单元素。
答案 1 :(得分:0)
最好的方法是将id和name,jquery的id和php的名称放在一起。 对于浏览器兼容,id / name一切正常。
答案 2 :(得分:0)
通过它选择一个元素的Id是最快的。 ID(应该)在文档上是唯一的。它适用于所有浏览器。