用户点击jQuery / javascript不同的行为,并以编程方式单击一个复选框

有点难以解释,所以我在这里设置了一个jsFiddle。

基本上,当用户单击复选框时,我会触发一些行为。 在另一个地方,我试图以编程方式单击复选框,我需要看到完全相同的行为。 它不起作用,似乎与点击的顺序和确定已检查的属性有关。

如何在不诉诸黑客的情况下获得我正在寻找的行为?

我倾向于在这里使用change处理程序(因为jQuery规范化了行为,它不需要blur ),然后像这样触发该事件:

 $('span').click(function() { $('.test').click().change(); }); 

然后,您明确了订单…并且您没有本机操作vs事件处理程序顺序的问题, 您可以在此处测试它 。

你不需要为这种行为添加javascript …只需使用这个html语法:

   

如果要添加javascript列表器,可以添加更改或单击以输入字段。

🙂

或者你应该使用jquery做到这一点:

 $('span').click(function() { $('.test').trigger('click'); }); 

我有同样的问题,并修复它调用javascript单击函数而不是像这样的jQuery:

 $('.test')[0].click();