由于某种原因,我无法使用 jQuery 通过 id 检索隐藏的输入。
我可以
> $('input')
[<input type="checkbox" name="property-type" id checked>, <input type="checkbox" name="property-type" id checked>, <input type="checkbox" name="property-type" id>, <input type="checkbox" name="property-type" id>, <input type="hidden" name="no-of-rooms" id="1-rooms">, <input type="hidden" name="no-of-rooms" id="2-rooms" checked>, <input type="hidden" name="no-of-rooms" id="3-rooms" checked>, <input type="hidden" name="no-of-rooms" id="4-rooms">, <input type="hidden" name="no-of-rooms" id="5-rooms">, <input type="hidden" name="no-of-rooms" id="over-5-rooms">, <input type="checkbox" name="property-type" id>, <input type="checkbox" name="property-type" id>, <input type="checkbox" name="property-type" id>]
这很好地为我提供了页面上的所有输入,包括 type=hidden 的输入。
我也可以
> $('input[type="hidden"]')
[<input type="hidden" name="no-of-rooms" id="1-rooms">, <input type="hidden" name="no-of-rooms" id="2-rooms" checked>, <input type="hidden" name="no-of-rooms" id="3-rooms" checked>, <input type="hidden" name="no-of-rooms" id="4-rooms">, <input type="hidden" name="no-of-rooms" id="5-rooms">, <input type="hidden" name="no-of-rooms" id="over-5-rooms">]
这让我得到了我所有的隐藏领域。请注意,它们都有一个 id。
出于某种原因,试图通过它们的 id 来定位这些输入,无论是否[type="hidden"]
包含,都会给我一个空列表。
> $('input[type="hidden"]#2-rooms')
[]
> $('input#2-rooms')
[]
我已经设法通过简单地不以他们的 ID 来定位他们来找到解决方法,但是知道为什么这似乎不可能是有用的。
编辑
使用只是$('#2-rooms')
对我有用,显然是最好的方法。但是,我仍然不确定为什么$('input#2-rooms')
不起作用,因为我实际上已经包含了 html5 doctype ( )<!DOCTYPE html>
,并且我理解在这种情况下以数字开头的 id 应该没问题。