我有以下HTML
CHOICE 1
<input type="radio" name="c1" value="0" class="a"> Yes
<input type="radio" name="c1" value="1" class="a"> No
<input type="radio" name="c1" value="2" class="a"> Only <input type="text" id="t1" />
<br />
CHOICE 2
<input type="radio" name="c2" value="0" class="a"> Yes
<input type="radio" name="c2" value="1" class="a"> No
<input type="radio" name="c2" value="2" class="a"> Only
<input type="text" id="t2" />
<br />
CHOICE 3
<input type="radio" name="c3" value="0" class="a"> Yes
<input type="radio" name="c3" value="1" class="a"> No
<input type="radio" name="c3" value="2" class="a"> Only
<input type="text" id="t3" />
<br />
<button>Press me</button>
如果选中的单选按钮为“Only”,我想获取文本框的值。关于如何做的任何想法?
这是我目前的jQuery脚本
var arr = new Array();
var rad;
var i = 0;
var id;
$('button').click(function(){
$('input[type="radio"]:checked').each(function(){
rad = $('input[type="radio"]:checked').val();
if(rad == 2){
id = this.id;
arr[i] = $('input[type="text"]#'+id).val();
}
else{
arr[i] = $(this).val();
}
i++;
});
alert(arr);
i = 0;
});
使用此脚本只会给我重复的文本框值。 “是”和“否”(0和1)值不会出现。
答案 0 :(得分:1)
单击按钮并选择“仅”无线电时,将.next()输入字段的值打印到控制台。
$("button").click(function(){
$("input[type=radio]:checked").each(function(){
if($(this).val() == 2) {
console.log($(this).next("input[type=text]").val());
}
});
});
答案 1 :(得分:0)
足够简单。
if ( jQuery("input[name='c1']:checked").val() === '2' ) {
return jQuery("#t1").val();
}
您可以添加一些额外的逻辑来动态生成c1
和t1
字符串,使其成为通用字符串。