JQuery - 获取隐藏 div 中输入字段的值

3

$('#some-field').val()会返回"something"还是空字符串?我认为无论div是否可见,它都应该返回值。但我一直得到的是一个空字符串。有什么想法吗?

<div style="display:none;">
    <form>
        <input id="some-field" type="text" value="something" />
    </form>
</div>

检查是否存在具有相同ID的其他字段/元素。如下面其他人所提到的,只要该值在DOM中,val()函数就会将其返回给你。 - Selvakumar Arumugam
谢谢,伙计们。我会继续研究是什么导致了这种奇怪的行为。但至少我可以放心,我的理解是正确的。 - weilin8
2个回答

4

它将返回something。可见性对于检索值并不起作用,因为它仍然存在于DOM中。


2
我希望我能够给出两个被接受的答案,但我选择为你点赞了。 :) - weilin8

4

试试这个:

$('div:hidden #some-field').val();

演示

即使是$('#some-field').val();也可以工作,因为可见性不影响元素是否属于DOM。

演示


如果您按ID选择元素,则不需要使用其他过滤器。 - Selvakumar Arumugam
@Vega 你好,老兄。我知道了,我会在我的回答中加入。 - thecodeparadox

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,