我正在设置一个表,每行包含几个单选框。收音机盒有一定的条件,例如:
如果选中“主页”,将取消选中“文本”单选框,而将检查“语音”(即,您无法发送家庭电话号码)。同样,当选中“Home”和“Voice”时,单击“Text”将强制取消选中“Home”并检查“Cell”。
我可以通过使用.getElementById和click函数让一个实例正常工作,但遇到麻烦的地方就是扩展的事情。该表可能有20或30行,每行包含一个带有这些单选框的单元格。
我对jQuery并不擅长,所以我不确定如何制作更通用的版本,以便每组收音机盒都是它们自己包含的单元,可以这么说。我做了一个jsfiddle,你可以看到只有第一个实例正在工作,可能是因为我使用他们的id定位框,你不能有两个具有相同id的元素...帮助?谢谢!
脚本
$( document ).ready(function() {
document.getElementById('contact-home').onclick = function () {
document.getElementById('format-voice').checked = true;
};
document.getElementById('format-text').onclick = function () {
document.getElementById('contact-cell').checked = true;
};
});
HTML
<form>
<input type="radio" name="contact" value="" id="contact-cell" />
<label for="contact-cell">Cell</label>
<input type="radio" name="contact" value="" id="contact-home" />
<label for="contact-home">Home</label>
<input type="radio" name="format" value="" id="format-voice" />
<label for="format-voice">Voice</label>
<input type="radio" name="format" value="" id="format-text" />
<label for="format-text">Text</label>
</form>
答案 0 :(得分:0)
您将要为每个广播框分配一个描述性的类,如“text-radio”或“home-radio”。然后当你需要更改所有的文本单选框时,你会在jQuery中执行以下操作:
$(".text-radio").attr('checked', 'checked');