如何查找具有空值的所有文本字段?
$(":text[value='']")
给出了一个JavaScript错误
我知道我可以做$(“:text”),迭代并返回$(this).val()==”的所有字段
我正在寻找一个更干净的方法和使用JQuery 1.3.1
如果元素在加载页面时最初具有值,则必须工作,然后用户清除它. ($(“#elem”).attr(‘value’)给出该位置的原始值,但.val()正常工作)
解决方法
最新答案:升级到1.3.2
以下是我在http://docs.jquery.com/Downloading_jQuery上通过FireBug运行的各种测试
使用特殊的greasemonkey脚本在页面加载时切换不同的jQuery版本.
>>> jQuery.prototype.jquery "1.3.2" >>> jQuery(":text[value='']") [input#jq-primarySearch] Unknown pseudo-class or pseudo-element 'text'. >>> jQuery(":text[value=]").get() [input#jq-primarySearch] >>> jQuery.prototype.jquery "1.3.1" >>> jQuery(":text[value='']") Syntax error,unrecognized expression: value=''] >>> jQuery(":text[value=]").get() [input#jq-primarySearch] >>> jQuery.prototype.jquery "1.3" >>> jQuery(":text[value='']"); Object length=1 prevObject=Object context=document Unknown pseudo-class or pseudo-element 'text'. [Break on this error] undefined >>> jQuery(":text[value=]").get() [input#jq-primarySearch]
请注意,1.3和1.3.2正确处理它(尽管Firefox发送错误)但它们仍然正确地获得节点.
或者:您可以使用:text [value =]表示法,它在我尝试的任何地方都可以使用.它只是有点怀疑这一切.
(忽略我之前的咆哮,他们都是笨蛋,没有美好的一天-_-)