如何使用jquery获取相邻标记中子项的子项的值?
从特定的div
开始,我想使用jquery来获取下一个div
块中的input
标记的值(两个级别向下)。 我有这样的HTML结构:
// suppose I start from this element ...
也就是说,如果我从.firstClass1
开始,我想从myValue2
获取值。 我尝试使用以下jquery,但它不起作用:
var nextID = $('.div#firstID1').next().find('input').val();
和
var nextID = $('.div#firstID1').next().next().val();
您错过了引号,也从.div#firstID1
删除了dot
:
var nextID = $('div#firstID').next().find('input').val();
这将有所帮助: http : //jsfiddle.net/bQYZJ/
你有额外的.
dot以及id
是firstID1
而不是firstID
:)
其他我已根据您的需要调整它。
希望这个帮助,
码
var nextID = $('div#firstID1').next('div').find('input').val();
用div
替换.div
。
试试:
$('div[id^=firstID]').mouseenter(function(){ var nextID = $(this).next().find('input').prop('value'); alert( nextID ); // test it! });
$('div[id^=firstID]')
表示“ID以firstID
开头的任何div”,
这将允许您获取任何’evented’元素的’下一个div输入值’,因此您不需要重写任何firstID[N]
元素的代码。
你也可以用,
var nextID = $('div#firstID1 > div > input')
要么
var nextID = $('div#firstID1').children().children()
要么
var nextID = $('div#firstID1').children('div').children('input');
但是(由于我不知道的原因), find
比children
更快的工作和>
接近。