Javascript-如果未选择任何单选按钮,请选中第一个
我是JavaScript的初学者。我的动态页面上有几个单选按钮,我想创建一个脚本,以实现以下功能: HTML:Javascript-如果未选择任何单选按钮,请选中第一个,javascript,radio,checked,Javascript,Radio,Checked,我是JavaScript的初学者。我的动态页面上有几个单选按钮,我想创建一个脚本,以实现以下功能: HTML: <input type="radio" id="elemainfoto"> <input type="radio" id="elemainfoto"> <input type="radio" id="elemainfoto"> var radio = '#elemainfoto', if(radd.value
<input type="radio" id="elemainfoto">
<input type="radio" id="elemainfoto">
<input type="radio" id="elemainfoto">
var radio = '#elemainfoto',
if(radd.value == 0) {
radd.checked the first radio element,
} else {
keep the way it is,
}
如果没有标记任何单选元素,则标记第一个必填项。在纯JS中类似这样的内容(我将id更改为类id应该是唯一的):
我希望默认情况下选择第一个项目,然后您应该使用HTML而不是javascript,请注意,您不应该使用具有相同id的两个HTML元素。在您的情况下,您应该使用类替换和/或为元素添加唯一id
<input type="radio" class="elemainfoto" id="item1" checked>
<input type="radio" class="elemainfoto" id="item2">
<input type="radio" class="elemainfoto" id="item3>
在html中多次使用相同值的“id”属性是无效的,您应该使用“name”作为输入
HTML:
<input type="radio" name="elementinfoto" value="1" />
<input type="radio" name="elementinfoto" value="2" />
<input type="radio" name="elementinfoto" value="3" />
JavaScript:
var radio = document.getElementsByName('elementinfoto'); // get all radio buttons
var isChecked = 0; // default is 0
for(var i=0; i<radio.length;i++) { // go over all the radio buttons with name 'elementinfoto'
if(radio[i].checked) isChecked = 1; // if one of them is checked - tell me
}
if(isChecked == 0) // if the default value stayed the same, check the first radio button
radio[0].checked = "checked";
var radio=document.getElementsByName('elementinfoto');//获取所有单选按钮
var isChecked=0;//默认值为0
对于(var i=0;i单选按钮组是通过赋予单选按钮相同的名称形成的。ID是可选的,通常不需要。如果提供了ID,则每个按钮应具有不同的值。并且按钮应具有一个值,以便有一个指向其存在的点
要在默认情况下选择一个按钮,只需设置所选按钮的选中属性:
<form id="foo">
<input type="radio" name="elemainfoto" valu="0" checked>0<br>
<input type="radio" name="elemainfoto" valu="1">1<br>
<input type="radio" name="elemainfoto" valu="2">2<br>
<input type="reset">
</form>
如果确实要检查是否选中了一个按钮,请在表单中添加如下按钮:
<input type="button" value="Check buttons" onclick="checkButtons(this);">
然后,checkButtons功能可以是:
function checkButtons(el) {
var buttons;
var form = el && el.form;
if (form) {
buttons = form.elemainfoto;
for (var i=0, iLen=buttons.length; i<iLen; i++) {
// If a button is checked, return its value
if (buttons[i].checked) {
return buttons[i].value;
}
}
}
// Otherwise, try to check the first one and return undefined
buttons && buttons[0].checked;
}
功能检查按钮(el){
var按钮;
var form=el&&el.form;
如有需要(表格){
按钮=form.elemainfoto;
对于(var i=0,iLen=buttons.length;i您需要知道如何使用单选元素。Id在html页面中是唯一的。您应该为每个单选元素指定相同的名称
<input type="radio" name="elemainfoto" id="first" value="1" />
element 1
<input type="radio" name="elemainfoto" id="second" value="2" />
element 2
<input type="radio" name="elemainfotor" id="thrid" value="3" />
element 3
您可以对每个单选按钮单击执行操作,以了解选中的项目
$(function(){
$('input[type="radio"]').click(function(){
if ($(this).is(':checked'))
{
alert($(this).val());
}
});
});
如果要对每个单选按钮执行单独的操作,请尝试以下代码
$(function () {
$('input[type="radio"]').click(function () {
if ($(this).is(':checked')) {
if ($(this).val() == '1') alert('first radio element is checked');
if ($(this).val() == '2') alert('second radio element is checked');
if ($(this).val() == '3') alert('third radio element is checked');
}
});
});
查看此FIDDLE文档。querySelectorAll('[type=“radio”]')[0]。checked=true
?Ow..并且您不能有重复的ID,因此您的HTML无效。有效的HTML页面不能有重复的ID。此代码不起作用。将ID更改为class,并将伪代码更改为实际语法。您应该到达(非常接近)对于您的解决方案,您想要一种默认的行为吗?是的,Amit Joki。Jquery很酷!只需将第一种设置为默认选择,无需脚本。单选按钮是动态生成的,因此我无法执行此操作。选中的属性是a,它没有任何值。如果需要,则为(这仅适用于XHTML,它不在web上使用)值必须与属性名称相同,即checked=“checked”
@user2697222当然,您可以在创建按钮后设置checked属性或defaultChecked属性。动态生成时是否会选择不同的选项(可能基于数据库值?)
…@War10ck我可以,但这会降低事件的效率,因为在的内部,如果您需要重新选择收音机收藏。啊,我知道您现在在做什么。这很聪明。我以前从未使用过。每天都学习一些新的东西。谢谢,伙计。:)
<input type="radio" name="elemainfoto" id="first" value="1" />
element 1
<input type="radio" name="elemainfoto" id="second" value="2" />
element 2
<input type="radio" name="elemainfotor" id="thrid" value="3" />
element 3
<input type="radio" name="elemainfoto" id="first" value="1" checked="true"/>
element 1
$("input:radio[name=elemainfoto]:first").attr('checked', true);
$(function(){
$('input[type="radio"]').click(function(){
if ($(this).is(':checked'))
{
alert($(this).val());
}
});
});
$(function () {
$('input[type="radio"]').click(function () {
if ($(this).is(':checked')) {
if ($(this).val() == '1') alert('first radio element is checked');
if ($(this).val() == '2') alert('second radio element is checked');
if ($(this).val() == '3') alert('third radio element is checked');
}
});
});