简体   繁体   中英

This is ugly and there has to be a better way to write it in jQuery

$(this).parent().parent().parent().parent().find('[name=reply_to_id]');

Thats just stupid looking, but its the best way i can think of writing it. I tried parentsUntil('li') but that didnt work at all and i also tried parents('li') and closest('li') . Isnt there something in jQuery with the equivalent of:

$(this).firstParentThatMatchesThis('li').find('[name=reply_to_id]');

If not i think ill try submitting it to the jQuery core...

Here is my HTML (long so i put it on pastebin): http://pastebin.com/FypJ9WGe

Working on getting JSFiddle in there...

Try this:

$(this).parents("li").eq(0).find('[name=reply_to_id]');

Example: http://jsfiddle.net/FvzT9/

But, closest should work as well:

$(this).closest("li").find('[name=reply_to_id]');

Example: http://jsfiddle.net/FvzT9/1/

$(this).closest('li').find('[name=reply_to_id]');

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM