Javascript 更改单选值时,单击按钮显示单选按钮值不起作用
我使用以下按钮单击内联javascript来显示单选按钮值。但它总是显示英文,即使我更改了值Javascript 更改单选值时,单击按钮显示单选按钮值不起作用,javascript,html,Javascript,Html,我使用以下按钮单击内联javascript来显示单选按钮值。但它总是显示英文,即使我更改了值 <input type="radio" name="LanguageSelect" id="LanguageSelect" value="English" checked="checked">English <input type="radio" name="LanguageSelect" id="LanguageSelect" valu
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="English" checked="checked">English
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Tamil">Tamil
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Hindi">Hindi</div><br>
<input type="button" class="button5" value="Continue" onclick="alert(document.getElementById('LanguageSelect').value);" />
英语
泰米尔人
印地语
我的要求是,需要显示所选的收音机请更改元素的ID,然后根据值显示元素 否则,DOM本身就无法做到这一点 解决方案 从HTML中删除
id=“LanguageSelect”
,因为即使选中了其他元素,当前元素仍将具有id属性。以下是您的代码示例:
下面是我测试代码的地方:
所以,一旦你删除了它,你就可以解决问题了
当您选择该值时,它将查找第一个元素,它的值为English,并且将发出警报
您可以使用jQuery或检查元素的检查性:
jQuery
这很简单!我向你推荐这个
但是,如果要使用JavaScript获取单选按钮的值,请尝试以下操作:
JavaScript
如果您只有三种选择,那么以下解决方案是合理的:
<input type="radio" name="LanguageSelect" id="LanguageSelect1" value="English" checked="checked">English
<input type="radio" name="LanguageSelect" id="LanguageSelect2" value="Tamil">Tamil
<input type="radio" name="LanguageSelect" id="LanguageSelect3" value="Hindi">Hindi</div><br>
<input type="button" class="button5" value="Continue" onclick="alertValue()" />
请检查一下这个。我已经在那里测试了这个解决方案
如果用其他方法选择图元时没有问题,那么另一种方法将是:
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="English" checked="checked">English
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Tamil">Tamil
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Hindi">Hindi</div><br>
<input type="button" class="button5" value="Continue" onclick="alertValue()" />
英语
泰米尔人
印地语
以及相应的js函数:
alertValue = function(){
var radios = document.getElementsByTagName("input");
for (var i=0;i<radios.length;i++)
if (radios[i].checked)
alert(radios[i].value);
}
alertValue=function(){
var radios=document.getElementsByTagName(“输入”);
对于(var i=0;i我自己做的
onclick='if(document.getElementById(\'LanguageSelect1\').checked==true)
{alert(document.getElementById(\'LanguageSelect1\').value);}
if(document.getElementById(\'LanguageSelect2\').checked==true)
{alert(document.getElementById(\'LanguageSelect2\').value);}
if((document.getElementById(\'LanguageSelect3\').checked==true)
{alert(document.getElementById(\'LanguageSelect3\').value);}'
您有多个元素具有相同的id
属性。DOM选择器不知道使用哪一个。@Lix:那么如何使其可行?我希望有相同的名称,因为它在我发布提交值时会很有用。可能的重复项我希望有相同的名称,因为它在我发布提交值时会很有用。我的要求是,n需要显示所选的收音机吗?要显示,您需要使用相似的名称而不是相似的ID:)您可以看到我的答案!:)我已经包含了您需要知道的所有内容:)谢谢您的答案…我自己做的..请检查我的答案是的,只有在您可以包含[]的情况下
参数来检查每个:)然后你会很完美…:)类似于:如果(document.getElementById('languageSelect1')[0]。选中){alert(this.value)}
…使用[0]
参数检查每个元素,你也可以使用其他整数,例如[1]
,[2]
来检查下一个元素。。。
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="English" checked="checked">English
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Tamil">Tamil
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Hindi">Hindi</div><br>
<input type="button" class="button5" value="Continue" onclick="alertValue()" />
alertValue = function(){
var radios = document.getElementsByTagName("input");
for (var i=0;i<radios.length;i++)
if (radios[i].checked)
alert(radios[i].value);
}
onclick='if(document.getElementById(\'LanguageSelect1\').checked==true)
{alert(document.getElementById(\'LanguageSelect1\').value);}
if(document.getElementById(\'LanguageSelect2\').checked==true)
{alert(document.getElementById(\'LanguageSelect2\').value);}
if((document.getElementById(\'LanguageSelect3\').checked==true)
{alert(document.getElementById(\'LanguageSelect3\').value);}'
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="English" checked="checked">English
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Tamil">Tamil
<input type="radio" name="LanguageSelect" id="LanguageSelect" value="Hindi">Hindi</div><br>
<input type="button" class="button5" value="Continue" onclick="clickable()" />
function clickable(){
var val=document.querySelector('input[name="LanguageSelect"]:checked').value;
alert(val);
}