我有2个按钮yes
和no
,我只是在切换它们。
<!DOCTYPE html>
<html>
<head>
<title>Demo Project</title>
</head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script src=""></script>
<script>
function enableCheckBoxAndDisableNoRadioButton() {
$(".checkbox").attr("checked",true);
$("#no").attr("checked", false);
}
function disableCheckBoxAnddisableYesRadioButton() {
$("#yes").attr("checked", false);
$(".checkbox").attr("checked",false);
}
</script>
<body>
<input class="checkbox" type="checkbox" >
<p>yes <input id="yes" type="radio" onchange="enableCheckBoxAndDisableNoRadioButton()"></p>
<p> no<input id="no" type="radio" checked=true onchange="disableCheckBoxAnddisableYesRadioButton()"></p>
</body>
</html>
当我点击yes
时,当时没有取消选择按钮并选中复选框。
但是当我点击no
按钮时,该时间复选框被取消选中,但也选择了yes
按钮。我想让它取消选择。
让我知道问题是什么。
我在chrome:53.0上运行此代码。
答案 0 :(得分:5)
答案 1 :(得分:1)
代替attr
,我将其更改为.prop
,现在正在运作。
答案 2 :(得分:0)
将 .attr 更改为 .prop 然后才有效
答案 3 :(得分:0)
您需要检查我们可以使用的位置 .prop()
/ .attr()
在大多数情况下,请使用
.prop()
代替.attr()
。
请参阅下面的一些属性和属性列表:
| **Attribute/Property** | **Attribute** | Property
| accesskey | Yes | No
| align | Yes | No
| async | Yes | Yes
| autofocus | Yes | Yes
| checked | Yes | Yes
| class | Yes | No
| href | Yes | No
| multiple | Yes | Yes
| readonly | Yes | Yes
并详细了解.prop() vs .attr()