簡體   English   中英

如何遍歷DOM樹在jQuery選擇更改事件上

[英]How to traverse dom tree on jquery chosen change event

我使用的是選擇的jQuery,因此我需要在更改時更改某些字段。 這是我有效的更改代碼:

j(".address").chosen().change(function(evt, value) {
    console.log(evt);
    address_id = value.selected;
});

如果我將evt變量登錄到控制台,我可以看到它具有一個名為currentTarget的屬性,該屬性似乎指向已隱藏的原始select元素。 如果我執行以下操作:

evt.currentTarget.remove();

如我所料,這會將選擇從DOM中刪除,從而表明該對象確實與選擇框相關。 因此,如果我嘗試遍歷DOM而不是使用該對象作為起點,那么我只會出錯。 例如,如果我執行以下操作:

evt.currentTarget.parents('.form-group').remove();

它只是以下錯誤:

Uncaught TypeError: undefined is not a function

理想情況下,我想執行以下操作:

evt.currentTarget.parents('.form-group').next('.form-group').find('.address').val("some data")

請不要建議僅使用ID,因為這對於我要構建的內容將不起作用,我希望即使在同一頁面上有多個實例,也可以使用適用於類的通用解決方案。

evt.currentTarget是一個節點,它與jQuery元素沒有相同的API,但是具有remove方法。

j(evt.currentTarget)一樣將它包裝在jQuery中,因為在您的情況下jQuery似乎是j

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM