2014-07-16 73 views
1

我有一个复选框元素有两个类。并且这个类单击事件ı做一些东西。 onchangeofvalidationandsubquestion总是触发第一,但我想它首先执行“radior”点击事件不是“onchangeofvalidationandsubquestion” event.Any的想法会有所帮助jquery复选框元素类点击

$(".radior").click(function (event) { 

}); 

$(".onchangeofvalidationandsubquestion").click(function (event) { 

}); 

var $radio = $('<input class="radiowidther" type="checkbox" />').appendTo($div); 
$radio.addClass("radior"); 
$radio.addClass("onchangeofvalidationandsubquestion"); 
+0

在你的代码本身我看到radior首先触发,然后onchangeofvalidationandsubquestion被触发。你可以查看http://jsfiddle.net/h5zJe/ – Roshan

+0

谢谢Roshan。在我的页面onchangeofvalidationandsubquestion首先触发。但jsfiddle示例无线电被触发。我很困惑 –

+0

在这种情况下,我认为Pondwater的答案是最好的。 – Roshan

回答

1

你总是可以添加自己的自定义事件后触发:

$(".radior").click(function (event) { 
    $(".onchangeofvalidationandsubquestion").trigger('myCustomEvent'); 
}); 

$(".onchangeofvalidationandsubquestion").on('myCustomEvent', function (event) { 

}); 

这样保证点击事件首先被处理。

这是一个有jQuery的注册和触发自定义事件一个小巧的jsfiddle:

http://jsfiddle.net/85XqL/

+0

谢谢你的回答。我会尝试一下。但是有没有另一种方法来处理它,而无需在无线电事件中触发事件? –

+0

这可能是使用jQuery保证事件顺序的最简单最简单的方法,请参阅:http://stackoverflow.com/a/290294/785259 – kbirk

+0

感谢Pondwater,它的工作原理。 –