我对这段代码很困惑,它自我解释它应该做什么,但它没有做到
<input name="property" type="radio" checked value="1" />Station Masters House
<input name="property" type="radio" value="2" />Railway Carriage
<br><br>
<div id="fillin">press</div>
$("#fillin").click(function() {
if ($('input[name=property]').val() == "1")
{
alert($('input[name=property]').val());
} else if ($('input[name=property]').val() == "2") {
alert($('input[name=property]').val());
}
});
这里的例子
答案 0 :(得分:4)
input[name=property].length === 2
...因此,.val()
无效。 (.val
拉出它找到的匹配请求选择器的DOM中第一个元素的值,但<select multiple>
元素的情况除外。)
请尝试input[name=property]:checked
。
$("#fillin").click(function() {
if ($('input[name=property]:checked').val() == "1")
{
alert($('input[name=property]:checked').val());
} else if ($('input[name=property]:checked').val() == "2") {
alert($('input[name=property]:checked').val());
}
});
更好的是,缓存你需要的东西,所以你只需要访问DOM(或者在这种情况下,jQuery的缓存):
$("#fillin").click(function() {
var val = $('input[name=property]:checked').val();
if ( val == "1") {
alert(val);
} else if (val == "2") {
alert(val);
}
});
答案 1 :(得分:1)
你应该做
if ($('input[name=property]:checked').val() == "1")