将静态行添加到JQuery下拉列表中

时间:2014-03-20 11:08:14

标签: jquery html

我有一个填充下拉框的功能,但是一旦返回数据,第一个记录就会显示在下拉列表中。为此下拉列表分配了一个“更改”事件,因此我不希望在数据首次返回时选择任何内容。

如何在下载加载时添加“Nothing Selected”行,甚至是空白行?

我目前的代码是:

 function loadDropDown(data1) {
    var renderDrop = _.map(data1, function (val) {
    return '<option>' + val + '</option>';
    }).join(); 
    $('#mydropdown').html(renderDrop);
    }

我的HTML是:

<select class="selectpicker" id="mydropdown">
</select>

我尝试对<option>Select an option</option>

进行严格编码

任何人都知道如何对此进行排序?

3 个答案:

答案 0 :(得分:2)

尝试

在添加其他选项之前添加<option>Select an option</option>

$("#mydropdown").html("<option>Select an option</option>" + renderDrop);

答案 1 :(得分:2)

更灵活的方法是这样的:

    $("#ddl option").eq(0).before($("<option></option>").val("").text("Select"));
    $("#ddl")[0].selectedIndex = 0;

通过这种方式,可以在列表中的任何位置添加项目。

答案 2 :(得分:1)

您可以附加选项,而不是覆盖整个选择。

function loadDropDown(data1) {
  _.map(data1, function (val) {
    $('#mydropdown').append($('<option>' + val + '</option>'));
  });
}