如何使用wrap
在jquery中动态添加div id,即每个下拉列表$(this).wrap('<div class="selectbox"/>');
($select)
生成的ID对于每个下拉列表都应该不同。
更新
$(document).ready(function() {
$("select").each(function() {
var id = $(div).att("id");
$(this).wrap('<div class="selectbox"/>');
$(this).after("<span class='selecttext'></span><span class='select-arrow'></span>");
var val = $(this).children("option:selected").text();
$(this).next(".selecttext").text(val);
});
});
这就是我想要做的..在这里我需要添加应该动态创建的div id。
答案 0 :(得分:1)
试试这个:
$("li").each(function(i, e) {
$(e).attr("id", "_id" + i);
});
例如,您可以使用随机化的字符流来模拟ID。也许这就是你打算做的事情。很难从如此简短的描述中找出你想要的东西。但是,我希望它有所帮助。
答案 1 :(得分:0)
在each
函数之前创建一个变量,并在each
循环内增加变量。
试试这个
$(document).ready(function(){
var slctid = 1; //creating a variable
$("select").each(function(){
var selectId= "selectID_" + slcid; //naming the variable
$(this).wrap('<div id="'+selectId+'" class="selectbox"/>'); //append it
$(this).after("<span class='selecttext'></span><span class='select-arrow'></span>");
var val = $(this).children("option:selected").text();
$(this).next(".selecttext").text(val);
slctid ++; //increase it here
});
});
此处您的选择ID将增加1 ... 例如。 firstid = selectID_1,secondId = selectID_2 ... 等等......
答案 2 :(得分:-1)
请改用:
$(document).ready(function() {
var id = 0;
$("select").each(function() {
$(this).wrap('<div class="selectbox" id="' + id + '"/>');
id++;
$(this).after("<span class='selecttext'></span><span class='select-arrow'></span>");
var val = $(this).children("option:selected").text();
$(this).next(".selecttext").text(val);
});
});