1
$.fn.fillSelect = function (data) {
    return this.clearSelect().each(function () {
        if (this.tagName == 'SELECT') {
            var dropdownList = this;
            $.each(data, function (index, optionData) {
                var option = new Option(optionData.Text, optionData.Value);
                if ($.browser.msie) {
                    dropdownList.add(option);
                } else {
                    dropdownList.add(option, null);
                }
            });
            // code for access "selectedindex" 
        }
    });
};

以上是使用 jQuery 动态生成下拉列表的代码片段。

我需要动态设置selectedIndex属性值,以便更早地显示保存的值。我将把该代码插入到// code for access "selectedindex"上面的代码中。那么如何设置selectedIndex属性dropdownList呢?

4

2 回答 2

2

您应该能够将属性设置为selectedIndex与其他属性相同。

假设这dropdownList是一个HTMLSelectElementdropdownList.selectedIndex = 5;, 应该可以工作。

于 2013-03-12T11:29:39.210 回答
1

我会在这段代码中这样做:

$.each(data, function (index, optionData) {
    var option = new Option(optionData.Text, optionData.Value);
    if (/* code to determine if this is the chosen one */) {
        option.setAttribute("selected", "selected");
    }
    if ($.browser.msie) { /* etc */

您正在相关选项上设置 selected 属性。

于 2013-03-12T11:30:47.580 回答