我基本上有几个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执行此操作的任何想法?提前谢谢。
答案 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);
});
});