javascript错误:无法读取null的属性“options”

javascript错误:无法读取null的属性“options”,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我有一个GridView,它有一个带有文本框的列,用户可以在其中输入值,还有一个带有dropdownlist的列。如果用户在文本框中输入的值不等于1,则必须从下拉列表中选择一个值。DDL中的默认值是Select,它只是一个空值,编码为:ddlReasions.Items.Insert0,new ListItemSelect;。DDL是动态创建的,但select始终是默认值 function UpdateSerialQtyRcvd(SerNoID, QtyRcvd) { if (

我有一个GridView,它有一个带有文本框的列,用户可以在其中输入值,还有一个带有dropdownlist的列。如果用户在文本框中输入的值不等于1,则必须从下拉列表中选择一个值。DDL中的默认值是Select,它只是一个空值,编码为:ddlReasions.Items.Insert0,new ListItemSelect;。DDL是动态创建的,但select始终是默认值

 function UpdateSerialQtyRcvd(SerNoID, QtyRcvd) {
        if (QtyRcvd != 1) {
            var ddl = document.getElementById("ddlReasons");
            var selectedValue = ddl.options[ddl.selectedIndex].value;
            if (selectedValue == "Select") {
                alert("Must select reason");
            }

        }
        else {
            PageMethods.UpdateSerialQtyRcvdUserControl(SerNoID, QtyRcvd, OnUpdateSuccess, OnUpdateFail);
        }
    }
如果用户输入的值不是1,那么我需要检查DDL中的值。如果Select是一个值,则我需要用户在DDL中选择其他内容,但我在var selectedValue=DDL.options[DDL.selectedIndex].value行中遇到此错误

未捕获的TypeError:无法读取null的属性“options”

下拉列表的代码:

<asp:TemplateField HeaderText="Reason">
 <ItemTemplate>
  <asp:DropDownList ID="ddlReasons" runat="server" class="ReasonDDL" ></asp:DropDownList>
 </ItemTemplate> 
</asp:TemplateField>
你需要得到客户ID

Javascript:

JQuery:


查看有关如何访问客户端ID和不同设置的信息。

使用JQuery的另一种方法:


尝试使用jquery从下拉列表中获取所选值。类似于var selectedValue=$'ddlReasons'。查找:selected.text;或var selectedValue=$'ddlReasures:selected'。文本;document.getElementByIddlReasions;返回null,即找不到您的下拉列表。发布相关HTML。下拉列表应具有唯一Id,因为您在GridView中使用下拉列表,您需要按类名访问下拉列表是否为下拉控件的ClientID?@phuzi code for dropdownlist addedI获取错误:名称“ddlReasons”在当前列表中不存在context@user123456789检查您的下拉列表并查看下拉列表的id
var ddl = document.getElementById("<%=ddlReasons.ClientID%>");
var ddl = $('#<%=ddlReasons.ClientID%>');
var ddlReason = $("[id*=ddlReasons]");
var selectedValue = ddlReason.val();