2014-07-16 72 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,它的工作原理。 –