2017-03-05 44 views

回答

2

closest()方法是使用來獲取最近的祖先元素。在你的情況下,你可以組合選擇器或使用filter()方法而不是closest()方法。

$('#123.sender').trigger("click"); 
// or 
$('#123').filter('.sender').trigger("click"); 
+1

謝謝Pranav。你是第一個。任何想法爲什麼這不會觸發ajax請求(置於.sender點擊) 無論如何 - 謝謝,男人! – Rossitten

+0

@Rossitten:它是動態生成的嗎?你在哪裏綁定處理程序? –

+0

@Rossitten:雖然你需要使用'event.preventDefault()'或者在末尾返回'false'來阻止處理程序中的默認動作 –

0

如果我正確理解你,你試圖查詢ID爲「123」的特定元素,該元素也具有「發件人」類。

在jQuery中你可以這樣做:

$('#123.sender').click(function(){ 
    // things you want to do here. 
}); 

這將添加一個監聽到任何元素分配它。

如果您想爲這是更普遍的(所有.sender類,例如),你可以這樣做:

$('.sender').click(function(){ 
    // example will add a class to an element which has foo, but only this element 
    $(this).addClass('foo'); 
}); 

我也想補充的是,UX的目的,如果你使用一個DIV元素,你也應該添加到你的CSS規則:

.sender { 
    cursor:pointer; 
} 

這將讓用戶知道它是可點擊的。

0

您只需要將div的id與其類相結合即可。

$('#123.sender').on('click', function(){ 
    // your code goes here... 
});