Javascript HTMLElement.click()在firefox中不起作用的复选框上
用例:- 当用户单击复选框“A”时,复选框“B”应被启用并自动选中 问题:-“B”正在启用但未被检查。此问题发生在firefox中,在chrome中工作正常 看来firefox已经,我已经报道过了 jquery版本1.4.4Javascript HTMLElement.click()在firefox中不起作用的复选框上,javascript,firefox,checkbox,Javascript,Firefox,Checkbox,用例:- 当用户单击复选框“A”时,复选框“B”应被启用并自动选中 问题:-“B”正在启用但未被检查。此问题发生在firefox中,在chrome中工作正常 看来firefox已经,我已经报道过了 jquery版本1.4.4 <!doctype html> <html> <title></title> <head> <meta http-equiv="Content-Type" content="text/html;charset
<!doctype html>
<html>
<title></title>
<head>
<meta http-equiv="Content-Type"
content="text/html;charset=ISO-8859-1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
var self = this;
self.context = $(document.body);
self.first = $("#123");
self.second = $("#456");
self.context.delegate("#123","click",function(e){
self.context.trigger("first/changed",this);
});
self.context.delegate("#456","click",function(e){
self.context.trigger("second/changed",this);
});
self.context.bind("first/changed",function(e,obj){
self.second.attr({
"disabled": ""
});
self.second.trigger("click");//**click event is not getting fired**
});
});
</script>
</head>
<body>
<ul class="main">
<li class="main-list">
<input type="checkbox" id="123"><span>A</span>
<ul class="sub">
<li class="sub-list1">
<input type="checkbox" id="456" disabled><span>B</span>
</li>
<li class="sub-list2">
<input type="checkbox" id="789" disabled><span>C</span>
</li>
</ul>
</li>
</ul>
</body>
</html>
$(文档).ready(函数(){
var self=这个;
self.context=$(document.body);
self.first=$(“#123”);
self.second=$(“#456”);
self.context.delegate(“#123”,“单击”,函数(e){
self.context.trigger(“first/changed”,this);
});
self.context.delegate(“#456”,“单击”,函数(e){
self.context.trigger(“second/changed”,this);
});
self.context.bind(“first/changed”,函数(e,obj){
self.second.attr({
“已禁用”:”
});
self.second.trigger(“单击”);//**未触发单击事件**
});
});
-
A.
-
B
-
C
改用道具。例如Jsfiddle
jQuery 1.4.4已经有五年历史了?我也尝试过使用1.6,但结果仍然是一样的为什么列表以li开头?添加了ul标记,但这不会影响任何事情,我猜出于某种原因,我们正在使用jQuery 1.4.4,并且该版本的prop不可用为什么要将checked属性设置为true,应该自动完成,对吗?
var self = this;
self.context = $(document.body);
self.first = $("#123");
self.second = $("#456");
self.context.delegate("#123","click",function(e){
self.context.trigger("first/changed",this);
});
self.context.delegate($("#456"),"click",function(e){
$("#456").prop("checked",true);
});
self.context.bind("first/changed",function(e,obj){
self.first.attr({
"disabled": ""
});
self.second.prop('disabled', false);
self.second.trigger( "click" );
});