<form>
在过去的一天半里,我遇到了 jQuery 无法在我的 HTML 中找到元素的问题。我多次通过验证器运行我的 HTML,验证了我的 JS 和 CSS,甚至删除了不必要的 JS 和 CSS 文件,现在简化为:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="http://yui.yahooapis.com/2.8.0r4/build/reset/reset-min.css" />
</head>
<body>
<form>
<input type="textbox" name="action" value="view"></input>
<button>Test</button>
</form>
</body>
</html>
在将我的 HTML 简化为基本内容后,我检查了 jQuery 是否可以简单地<form>
使用 $('form')
. 好吧,jQuery 什么也没返回。它完全崩溃了。它什么也没返回,甚至没有返回一个 jQuery 对象。所以我再一次继续我的精神错乱,验证 HTML 等等,但仍然一无所获!
我第二次重写了 HTML,但方式不完全相同,它成功了!所以我区分了这两个文件并开始调整原始文件以逐渐与我刚刚编写的新文件相同。事实证明,name
属性的值是搞砸一切的罪魁祸首!只需将值更改为action
允许 jQuery 最终拾取<form>
元素之外的任何值!真的?!!@#%$!@#!!!
所以我的问题是: jQuery 中的关键字是action
什么,属性的值是如何搞砸一切的?
如果它是一个关键字并且您不想解释原因,请您指向我的文档,以便我可以在阅读后打自己的头。属性的值会搞砸事情似乎仍然很奇怪,但这可能是因为我对 jQuery 的实现一无所知。=)