我有这个代码和html触发单选按钮 这是工作,没有任何问题,“但是,应该有一个名称属性” 当我删除名称属性是不起作用 是什么原因?
<input type="radio" name="e" />
<input type="radio" name="e" />
<input type="radio" name="e" />
$(document).ready(function () {
$('input[type=radio]').change(function (event) {
//I've used classes based on values, which works as long as
//the values are consistent and don't contain spaces!
console.log(this);
$.filter(this).prop('checked', this.checked);
});
});
答案 0 :(得分:3)
单选按钮必须具有name
属性。该名称用于确定哪些按钮属于同一组,因此单击其中一个按钮将取消选中上一个按钮。这种分组是单选按钮和复选框之间的区别。
答案 1 :(得分:1)
使用名称属性
定义单选按钮组
只有具有name属性的表单元素才会在提交表单时传递其值。
单选按钮的全部目的是使用户能够从列表中进行一个选择 - 仅一个选择。如果您希望用户进行多项选择,则不会使用单选按钮 - 您可以使用复选框。
无论如何,因为用户只能从我们的单选按钮组中进行一次选择,所以该组中的所有单选按钮都需要共享相同的名称。这就是我们将列表组合在一起的方式 - 它们都具有相同的名称。这告诉表单处理程序组的名称以及所选单选按钮的值。
参考
答案 2 :(得分:0)
name
属性相同。
答案 3 :(得分:0)
你可以不用名字来做,但这不是一个正确的方法,
$(document).ready(function() {
$('input[type=radio]').change(function(event) {
console.log(this);
$(this).prop('checked', true);
$('input[type=radio]').not(this).prop('checked', false);
});
});