【问题标题】:Dynamically populating a dropdown with jQuery使用 jQuery 动态填充下拉列表
【发布时间】:2010-08-10 07:09:30
【问题描述】:

如何使用 jQuery 从下拉列表中删除所有值?

idnum = "item-7";

它填充了一个包含 7 个项目的下拉列表。我可以有一个“item-3”,它会在下拉列表中填充三个项目。我想要做的是选择一个按钮,它的 id 值为“item-X”,其中 X 是要填充的条目数,因此它可能会根据我单击的任何按钮而有所不同。我想清除选择列表并在每次单击按钮时使用不同的数字重新填充它。

这是我的代码:

 $('#items').empty();

 // alert('I was clicked, my id is ' + $(this).attr('id')); 
 var idnum = $(this).attr('id');
 var pos = idnum.lastIndexOf("-");
 var num = idnum.substring(pos + 1);

 // alert("You have " + num);

 // var numbers = [1, 2, 3, 4, 5]; 
 var numbers = new Array(num - 1);

 for (i = 0; i < num; i++) {
   numbers[i] = i + 1;
 }

 for (i=0;i<numbers.length;i++){ 
   $('<option/>').val(numbers[i]).html(numbers[i]).appendTo('#items'); 
 }

我尝试了 empty() 和 remove(),但它们都不起作用。

【问题讨论】:

    标签: jquery


    【解决方案1】:
    $('#items').html('');
    

    将清除您的选项。

    【讨论】:

    • 我做了
    • 抱歉评论,你是对的。它确实奏效了。这就是凌晨 1:15 工作对你的影响。
    【解决方案2】:

    如果您想填充新选项,请不要使用appendTo()

    var opt='';
    for (i=0;i<numbers.length;i++){ 
       opt += '<option value="'+i+'">'+i+'</option>'; 
    }
    $('#items').html(opt);
    

    【讨论】:

      【解决方案3】:

      要删除您的选项,您还可以这样做:

      $('#items > option').remove();

      【讨论】:

        【解决方案4】:

        你试过了吗

        $('#items').children().remove(); 
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-18
          • 2023-04-03
          相关资源
          最近更新 更多