2014-02-24 112 views
0

我有事件:jQuery的觸發事件委託

$(document).on("click", ".someClass", function(e){ /*stuff*/ })); 

然後我做$(".someClass").trigger("click");但沒有任何反應。

我認爲我會需要在某種程度上文件觸發事件......有什麼辦法來觸發事件的一些方式,因爲它會真的點擊轉授的事件也將被解僱?

而且 - 我已經得到了someClass項的多個元素,有時我需要觸發它只是對他們的單。

+1

你可以試試'$( 「SomeClass的」)[0]。點擊();'這將觸發DOM元素本地單擊事件 – Satpal

+0

可能與任何事件的名字嗎? – pie6k

+0

「我需要觸發它只是對他們的單曲」那麼,你怎麼定位這個特定的一個? –

回答

1

沿着這些線路的東西應該工作:

var $container = $('.container'); 

// create a button 
var $button = $('<input value="Click me!" class="btn" type="button"/>'); 

// add button to container 
$container.append($button); 

// click listener 
$container.on('click', '.btn', function() { 
    alert('Triggered'); 
}); 

// Create an event 
var event = jQuery.Event('click'); 
event.target = $container.find('[type=button]')[0]; 

// Trigger the event on the container 
$container.trigger(event); 

Fiddle