Ale*_*xis 853 javascript forms jquery radio-button
我尝试用jQuery检查一个单选按钮.这是我的代码:
<form>
<div id='type'>
<input type='radio' id='radio_1' name='type' value='1' />
<input type='radio' id='radio_2' name='type' value='2' />
<input type='radio' id='radio_3' name='type' value='3' />
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
和JavaScript:
jQuery("#radio_1").attr('checked', true);
Run Code Online (Sandbox Code Playgroud)
不起作用:
jQuery("input[value='1']").attr('checked', true);
Run Code Online (Sandbox Code Playgroud)
不起作用:
jQuery('input:radio[name="type"]').filter('[value="1"]').attr('checked', true);
Run Code Online (Sandbox Code Playgroud)
不起作用:
你有其他想法吗?我错过了什么?
Mik*_*sen 1406
对于jQuery等于或大于(> =)1.6的版本,请使用:
$("#radio_1").prop("checked", true);
Run Code Online (Sandbox Code Playgroud)
对于(<)1.6之前的版本,请使用:
$("#radio_1").attr('checked', 'checked');
Run Code Online (Sandbox Code Playgroud)
提示:之后您可能还想打电话click()或change()打开单选按钮.有关详细信息,请参阅注释
Vla*_*cic 244
试试这个.
在这个例子中,我用它的输入名称和值来定位它
$("input[name=background][value='some value']").prop("checked",true);
Run Code Online (Sandbox Code Playgroud)
很高兴知道:在多字值的情况下,它也会因为撇号而起作用.
Ume*_*til 95
在jQuery 1.6中添加的另一个函数prop(),用于相同的目的.
$("#radio_1").prop("checked", true);
Run Code Online (Sandbox Code Playgroud)
小智 77
简短易读的选项:
$("#radio_1").is(":checked")
Run Code Online (Sandbox Code Playgroud)
它返回true或false,因此您可以在"if"语句中使用它.
Lak*_*mar 31
试试这个.
要使用Value检查单选按钮,请使用此选项.
$('input[name=type][value=2]').attr('checked', true);
Run Code Online (Sandbox Code Playgroud)
要么
$('input[name=type][value=2]').attr('checked', 'checked');
Run Code Online (Sandbox Code Playgroud)
要么
$('input[name=type][value=2]').prop('checked', 'checked');
Run Code Online (Sandbox Code Playgroud)
要使用ID检查单选按钮,请使用此选项.
$('#radio_1').attr('checked','checked');
Run Code Online (Sandbox Code Playgroud)
要么
$('#radio_1').prop('checked','checked');
Run Code Online (Sandbox Code Playgroud)
Ami*_*aqi 12
该$.prop方法是更好:
$(document).ready(function () {
$("#radio_1").prop('checked', true);
});
Run Code Online (Sandbox Code Playgroud)
你可以像下面这样测试它:
$(document).ready(function () {
$("#radio_1, #radio_2", "#radio_3").change(function () {
if ($("#radio_1").is(":checked")) {
$('#div1').show();
}
else if ($("#radio_2").is(":checked")) {
$('#div2').show();
}
else
$('#div3').show();
});
});
Run Code Online (Sandbox Code Playgroud)
Cod*_*Spy 11
使用prop()方法
源链接
<p>
<h5>Radio Selection</h5>
<label>
<input type="radio" name="myRadio" value="1"> Option 1
</label>
<label>
<input type="radio" name="myRadio" value="2"> Option 2
</label>
<label>
<input type="radio" name="myRadio" value="3"> Option 3
</label>
</p>
<p>
<button>Check Radio Option 2</button>
</p>
<script>
$(function () {
$("button").click(function () {
$("input:radio[value='2']").prop('checked',true);
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
apa*_*kin 10
令人惊讶的是,尽管有评论,但最受欢迎和接受的答案却忽略了触发适当的事件。确保调用 .change(),否则所有“更改时”绑定都将忽略此事件。
$("#radio_1").prop("checked", true).change();
Run Code Online (Sandbox Code Playgroud)
这个答案感谢 Paul LeBeau 的评论。我想我应该把它写成一个正确的答案,因为令人惊讶的是没有一个。
\n唯一对我有用的东西(jQuery 1.12.4,Chrome 86)是:
\n$(".js-my-radio-button").trigger("click");\nRun Code Online (Sandbox Code Playgroud)\n这可以完成我想要的一切 \xe2\x80\x93 更改哪个单选按钮看起来被选中(视觉上和编程上)并触发事件,例如change单选按钮上的事件。
仅按照其他答案的建议设置“选中”属性不会更改为我选择的单选按钮。
\n你必须做
jQuery("#radio_1").attr('checked', 'checked');
Run Code Online (Sandbox Code Playgroud)
这是HTML属性
如果财产name不起作用,请不要忘记id仍然存在.这个答案适用于那些想要以此为目标的id人.
$('input[id=element_id][value=element_value]').prop("checked",true);
Run Code Online (Sandbox Code Playgroud)
因为财产name对我不起作用.确保您没有环绕id并name使用双/单引号.
干杯!
小智 6
尝试这个
$(document).ready(function(){
$("input[name='type']:radio").change(function(){
if($(this).val() == '1')
{
// do something
}
else if($(this).val() == '2')
{
// do something
}
else if($(this).val() == '3')
{
// do something
}
});
});
Run Code Online (Sandbox Code Playgroud)
小智 5
$("input[name=inputname]:radio").click(function() {
if($(this).attr("value")=="yes") {
$(".inputclassname").show();
}
if($(this).attr("value")=="no") {
$(".inputclassname").hide();
}
});
Run Code Online (Sandbox Code Playgroud)
获取价值:
$("[name='type'][checked]").attr("value");
Run Code Online (Sandbox Code Playgroud)
设定值:
$(this).attr({"checked":true}).prop({"checked":true});
Run Code Online (Sandbox Code Playgroud)
选中单选按钮单击添加属性:
$("[name='type']").click(function(){
$("[name='type']").removeAttr("checked");
$(this).attr({"checked":true}).prop({"checked":true});
});
Run Code Online (Sandbox Code Playgroud)
我们应该告诉它是一个radio按钮,因此请尝试以下代码。
$("input[type='radio'][name='userRadionButtonName']").prop('checked', true);
Run Code Online (Sandbox Code Playgroud)
小智 5
我对英语感到抱歉。
var $j = jQuery.noConflict();
$j(function() {
// add handler
$j('#radio-1, #radio-2').click(function(){
// find all checked and cancel checked
$j('input:radio:checked').prop('checked', false);
// this radio add cheked
$j(this).prop('checked', true);
});
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<fieldset class="section">
<legend>Radio buttons</legend>
<label>
<input type="radio" id="radio-1" checked>
Option one is this and that—be sure to include why it's great
</label>
<br>
<label>
<input type="radio" id="radio-2">
Option two can be something else
</label>
</fieldset>Run Code Online (Sandbox Code Playgroud)
小智 5
用例子试试这个
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="myForm">
<input type="radio" name="radio" value="first"/> 1 <br/>
<input type="radio" name="radio" value="second"/> 2 <br/>
</form>
<script>
$(document).ready(function () {
$('#myForm').on('click', function () {
var value = $("[name=radio]:checked").val();
alert(value);
})
});
</script>
Run Code Online (Sandbox Code Playgroud)
万一有人在尝试使用jQuery UI来实现此目的,您还需要刷新UI复选框对象以反映更新后的值:
$("#option2").prop("checked", true); // Check id option2
$("input[name='radio_options']").button("refresh"); // Refresh button set
Run Code Online (Sandbox Code Playgroud)