-5

如何在 jquery 中使用wrapie动态添加 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。

4

3 回答 3

1

尝试这个:

$("li").each(function(i, e) {
  $(e).attr("id", "_id" + i);
});

例如,您可以使用随机的字符流来模拟 ID。也许这就是你打算做的。很难从如此简短的描述中弄清楚你想要什么。不过,我希望它有所帮助。

于 2013-01-10T10:03:59.127 回答
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...以此类推...

于 2013-01-10T10:13:04.150 回答
-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);
    });
}); 
于 2013-01-10T10:10:46.910 回答