标签标签中的复选框:Chrome和Firefox中的不同结果
Checkbox in label tag : Different result in Chrome and Firefox
<label for="checkbox2" id="label1">
click <input type="checkbox" id="checkbox1">
</label>
<input type="checkbox" disabled="true" id="checkbox2"/>
$(document).ready(function(){
$('#checkbox1').click(function(event) {
$('#checkbox2').prop('disabled', !this.checked);
});
});
页面中有两个复选框。(#checkbox1、#checkbox2)
#checkbox1 在标签标签中,#checkbox2 不在。
我想根据 #checkbox1 启用/禁用 #checkbox2。
- 选中 #checkbox1 ->启用 #checkbox2
- 未选中 #checkbox1 ->禁用 #checkbox2
当我检查 #checkbox1 时,#checkbox2 已正确启用。
但是 #checkbox2 仅在Firefox中同时检查。(IE和Chrome不是)
我认为问题与事件的顺序有关。但是,我不太清楚。
http://jsfiddle.net/vtLzj/2/
编辑:
- 我只想在启用后更改 #checkbox2 的状态。
- 我想在启用 #checkbox2 时保留 #label1 事件。(如Chrome或IE)
- 请在Chrome和Firefox上测试DEMO。
删除 for
属性,并将事件侦听器从 click
更改为 change
。
label
元素for
属性必须附加到checkbox1
元素,但您可以在复选框 1 的更改处理程序中更改复选框 2 的选中状态
<label for="checkbox1" id="label1">click
<input type="checkbox" id="checkbox1">
</label>
<input type="checkbox" disabled="true" id="checkbox2" />
然后
$(document).ready(function () {
$('#checkbox1').change(function (event) {
$('#checkbox2').prop({
disabled: !this.checked,
checked: this.checked
});
});
});
演示:小提琴
相关文章:
- 在<页眉>标签
- 奇怪的Javascript结果
- Ckeditor-plugin:插入虚假元素add不情愿<p>标签前后
- Javascript(jQuery)给了我奇怪的结果
- JSONP请求返回结果,但也触发error_callback
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- YouTube API v3哈希标签搜索错误结果
- 标签标签中的复选框:Chrome和Firefox中的不同结果
- 在标签中以 asp.net 显示 jQuery 的结果
- 将计算结果设置为ng样式标签Angular.js的百分比
- 获取两个输入标签相乘为不同标签的结果
- 使用ajax在ul标签中追加结果
- 我发现如何改变html5源标签的视频源(src),但在函数内或与内联javascript得到不同的结果
- 使用AngularJs显示标签中函数的字符串结果
- 从select html标签中选择的值在javascript if/else语句中没有产生正确的结果
- getElementsByTagName()返回0自定义标签的结果
- 编号页面导航脚本不适用于搜索标签和查询结果
- 为什么当我在迭代中中断标签时输出此结果
- 在Lift中,发送标签的ID以及函数结果
- 当我单击标签时,提示生成结果