使用jquery或基本javascript更新一组无线电值
我对jquery和引导框架还很陌生。 然而,我试图在通过mysql查询生成的一组radiobuttons(收音机名称作为复选框的id)上创建一个不错的yes/no开关 我用这个开关做了一张漂亮的桌子: 如果使用以下代码切换开关,我成功地将无线电值更改为是/否:使用jquery或基本javascript更新一组无线电值,javascript,jquery,twitter-bootstrap,radio,Javascript,Jquery,Twitter Bootstrap,Radio,我对jquery和引导框架还很陌生。 然而,我试图在通过mysql查询生成的一组radiobuttons(收音机名称作为复选框的id)上创建一个不错的yes/no开关 我用这个开关做了一张漂亮的桌子: 如果使用以下代码切换开关,我成功地将无线电值更改为是/否: <div class="make-switch radioswitch"> <input type="radio" checked="checked" value="yes" name="00839770708">
<div class="make-switch radioswitch">
<input type="radio" checked="checked" value="yes" name="00839770708"></input>
</div>
<div class="make-switch radioswitch">
<input type="radio" value="no" name="00481821213"></input>
</div>
<div class="make-switch radioswitch">
<input type="radio" checked="checked" value="yes" name="23467894567"></input>
</div>
etc..
等
jquery javascript称为:
<script>
$('.radioswitch').on('switch-change',function(e,data){
var$el=$(data.el)
,value=data.value;
if(value==true)
{alert('value is yes');
// it sets the radio's value with "yes", but it works on a single radio with a given name
$("input[type=radio][name=00100190610]").val("yes");
}
else{alert('value is no');
// it sets the radio's value with "no", but it works on a single radio with a given name
$("input[type=radio][name=00100190610]").val("no");}
console.log(e,$el,value);
});
</script>
$('.radioswitch').on('switch-change',函数(e,数据){
var$el=$(data.el)
,value=data.value;
如果(值==true)
{alert('值为yes');
//它将收音机的值设置为“是”,但它在具有给定名称的单个收音机上工作
$(“输入[type=radio][name=00100190610]”)val(“是”);
}
else{alert('值为no');
//它将收音机的值设置为“否”,但它在具有给定名称的单个收音机上工作
$(“输入[type=radio][name=00100190610]”)val(“否”);}
console.log(e$el,value);
});
我想知道的是如何将一个参数传递给选中收音机的名称选择器
或者使用另一条指令告诉javascript“更新无线电值,其中无线电名称为xxx”
提前谢谢,如果我把问题解释得不好,我很抱歉
关于您的屏幕截图,您想要使用的是
复选框
,而不是收音机
输入
无线电输入是一组相互关联的输入,它们有一个共同的名称,它们具有相同的含义
常见例子:
HTML
:
<input type="radio" name="payment_type" value="visa" />
<input type="radio" name="payment_type" value="mastercard" />
...
注意:当然,您必须将es用作复选框(默认行为),而不再用作
您不需要将值更新为yes
或no
。。毕竟,yes
对应于“checked”,而no
to
由于HMTL input(jQuery)中的复选框,您已经知道了该信息和状态:
现在,回答您最初的问题:
“我想知道的是如何将参数传递给名称选择器?”
您可以动态生成选择器(一个字符串):
var arr = ['00839770708', '00481821213', '23467894567'];
for (var i=0; i<arr.length; i++) {
console.log( $('input[name='+arr[i]+']').attr('checked') );
}
您从哪里获得新名称值?它是特定元素的属性还是属性?你能发布一个,或者类似的,我们可以尝试的演示吗?谢谢你回复@david thomas,我更新了一篇帖子:)如果我在@8y5写了一些Javascript亵渎,我很抱歉,但是说复选框可以有一个值!我需要获取该复选框值才能将其插入mysql表中…抱歉,我以为您已经在使用复选框了,但没有。我更新了我的答案。简短回答:您应该使用复选框
。
$('input[name=00839770708]').attr("checked") // --> returns false
$('input[name=00481821213]').attr("checked") // --> returns true
...
var arr = ['00839770708', '00481821213', '23467894567'];
for (var i=0; i<arr.length; i++) {
console.log( $('input[name='+arr[i]+']').attr('checked') );
}
> false
> true
> true