javascript jQuery打印到页面加载多个div?

时间:2009-07-14 05:06:59

标签: javascript jquery css

我基本上有几个div,每个div都有id“id_1”,“id_2”“id_3”等。这些div最初都是空的。

我希望在页面加载时填充具有特定html内容的所有div。但令我不安的部分是我还需要提取在html中使用的唯一id部分:

<div id="id_3">
     <div id="inner_3></div>
</div>

其中内部div是打印的内容。请注意,'3'是通过javascript从容器div id中提取的,然后在内部div中使用和打印。

有关如何使用jquery执行此操作的任何想法?提前谢谢。

2 个答案:

答案 0 :(得分:1)

您可以获取ID为starts with某个字符串的所有div元素:

$(function() {
    $('div[id^=id_]').each(function() {
        var id = $(this).attr('id').split('_').pop();
        $(this).html(
            $('<div/>').attr('id','inner_' + id)
        );
    });
});

然后循环遍历每个,获取id,并进行HTML操作。

答案 1 :(得分:0)

有几种方法可以做到这一点,但最后它只是简单的字符串操作。这是一个例子:

// on page load
$(function(){
    //find all divs and iterate through them - you can use any selector you like
    $("div").each(function(){
        //this gets the id attribute of the div we are currently on in the loop
        var id = $(this).attr("id");
        //this gets the number at the end - notice that its just string manipulation
        var nid = id.slice(id.lastIndexOf("_") + 1)
        //create inner div, give it an id and append
        var innerDiv = $('div').attr("id", "inner_" + nid);
        $(this).append(innerDiv);
        //all done - you can append content to inner div here
        // innerDiv.append(someContent);
    });
});