我正在尝试在html的隐藏输入中初始化值。所以我在要初始化的输入中添加了属性。如何选择这些对象?
<input type="hidden" class="hidden" name="a" value="" init />
<input type="hidden" class="hidden" name="b" value="" />
$("input:hidden[init]").val(""); // this is not working, but you might know what I want.
[ADD]
我在Internet Explorer中使用1.4 jQuery
答案 0 :(得分:0)
由于init
是一个属性,要选择具有该属性的元素,您可以将其放在之前 jQuery psuedo-上课,不是之后:
:hidden
$("input[init]:hidden").val("foo");
console.log(
$("input[init]:hidden").val()
);
也就是说,当您要将自定义信息添加到HTML时,最好使用<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" class="hidden" name="a" value="" init />
<input type="hidden" class="hidden" name="b" value="" />
属性,而不是随机的非标准属性:
data-
$("input[data-init]:hidden").val("foo");
console.log(
$("input[data-init]:hidden").val()
);
对于旧版本的jQuery,<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="hidden" class="hidden" name="a" value="" data-init />
<input type="hidden" class="hidden" name="b" value="" data-init/>
可能无法正常工作-请改用标准选择器字符串:
:hidden
input[data-init][type='hidden']
$("input[data-init][type='hidden']").val("foo");
console.log(
$("input[data-init][type='hidden']").val()
);
答案 1 :(得分:0)
使用此$("input[type='hidden'][init]");
console.log("control found with init attribute : " + $("input[type='hidden'][init]").length);
console.log("control found without init attribute : " + $("input[type='hidden']:not([init])").length);
console.log("All Hiddens : " + $("input[type='hidden']").length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<input type="hidden" class="hidden" name="a" value="" init />
<input type="hidden" class="hidden" name="b" value="" />
答案 2 :(得分:0)
我回答自己。
我写这段代码。
<input type="hidden" class="hidden" name="a" value="" init />
<input type="hidden" class="hidden" name="b" value="" />
然后我在IE中签到,这样转换了
<input type="hidden" class="hidden" name="a" value="" init="" />
<input type="hidden" class="hidden" name="b" value="" />
所以,我确实是这样。
$("input:hidden[init=]").val("");
这行得通。