jQuery - 你能覆盖每一对html元素吗?像每个<h3> </h3> <div> </div>?

时间:2013-05-24 18:16:21

标签: jquery

我有一个jquery手风琴,我想循环从他们那里获取数据。

格式为:

<h3>Title</h3>
<div><textarea>Description</textarea></div>

我可以遍历每一对,以便我可以获取名称和描述吗?如果我不需要,我宁愿不将它们包装在另一个div中。

感谢。

3 个答案:

答案 0 :(得分:1)

你可以这样做:

var things = $('h3').map(function(){ return {
    name: $(this).text(),
    description: $(this).next('div').find('textarea').val()
}}).get();

Demonstration

答案 1 :(得分:1)

如果您的结构始终为h3,然后是div

,请尝试以下代码
var items = [];
$('h3').each (function () {
   items.push({
               'Name': $(this).text(), 
               'Description' : $(this).next().text()
              });
})

答案 2 :(得分:1)

你可以这样做:

$("h3").each(function() {
    console.log($(this).text()); <--- Your title text
    console.log($(this).next("div").children("textarea").text()); <--- description
});

演示:http://jsfiddle.net/bC5Mk/