Javascript HTMLElement.click()在firefox中不起作用的复选框上

Javascript 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

用例:- 当用户单击复选框“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=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" );
       });