0

嗨,我已经asp:DropDownList从 javascript 添加了一些项目。像这样

 if (document.getElementById("<%=gdview.ClientID %>")!=null)
    {
    var rows = document.getElementById("<%=gdview.ClientID %>").getElementsByTagName('tr');
    var cells = rows[1].getElementsByTagName('td');
  //alert(cells)
    i = 2;
    while (i < cells.length)
    {
        document.getElementById("<%=ddl_noofCols.ClientID %>").options[i] = new Option(i + 1, i);
        i++;
           }
    document.getElementById("<%=ddl_noofCols.ClientID %>").options[2].selected =true;
    alert(document.getElementById("<%=ddl_noofCols.ClientID %>").options[2].text);
    }

这里gdview是gridview。没有将 gridview 的列添加到下拉列表默认options[2]选中。我不能使用ddl_noofCols.SelectedValue返回 null 的 get selecteditem/selectedvalue。

如何获得选定的值。

提前致谢。

4

1 回答 1

0

你可能想要这样的东西:

var table = document.getElementById("<%=gdview.ClientID %>");
var select = document.getElementById("<%=ddl_noofCols.ClientID %>");
var cells;

if (table) {
    cells = table.rows[1].cells;

    for  (var i=2, iLen=cells.length; i<iLen; i++) {
        select.options[i] = new Option(i + 1, i);
    }
    select.options[2].selected = true;
    alert(select.options[2].text);

    // To get the current value of the select, 
    // use the value property:
    alert(select.value);
}

当前选定选项的值可用作select.value。如果所选选项没有 value 属性或属性,则返回text属性的值,但在 IE 8 及更低版本中除外,您必须使用类似以下内容:

var value = select.value;

if (!value) {
    value = select.options[select.selectedIndex].text;
}
于 2012-08-06T06:20:42.997 回答