値をドロップダウンリストから選択したかどうかに基づいてボタンを有効/無効にしようとしています。何らかの理由でJavaScriptが選択されたインデックスを取得しません。ドロップダウンリスト私はのonChange属性追加している後ろのコードでJavaScriptのdropdownlist.selectedIndexがASP.netページでエラーを起こしている
<asp:DropDownList ID="ddlMyDropDownList" runat="server">
<asp:ListItem> </asp:ListItem>
<asp:ListItem>Yes</asp:ListItem>
<asp:ListItem>No</asp:ListItem>
</asp:DropDownList>
:ここでは、ドロップダウンリストの宣言だ
ddlMyDropDownList.Attributes.Add("onchange", "enableButton();")
はこれがenableButton機能が一部にまで剥奪、次のようになります
function enableButton() {
var ddl = document.getElementById('#<%= ddlMyDropDownList.ClientID %>');
alert("Testing");
var idx = ddl.selectedIndex;
};
このように、ドロップダウンリストの値を変更すると警告が表示されます。私はIDX行の後にアラートを移動した場合、しかし:
function enableButton() {
var ddl = document.getElementById('#<%= ddlMyDropDownList.ClientID %>');
var idx = ddl.selectedIndex;
alert("Testing");
};
それはddl.selectedIndexは何とかエラーの原因となっていることを示し、発生しません。なぜこれが起こっているのでしょうか、どのように解決しますか?ユーザーが最初のオプション以外のものを選択した場合にのみテストしたいと思うとすれば、これを行う方が簡単ですか?
あなたはddlのコントロールへの参照を取得していますか? var ddlがnullまたは未定義の場合、アラートは引き続き発生します。おそらく、ブレークポイントからコードにステップインしたり、別のプロパティを調べてみたりできます。 – DOK
ddlに警告すると、何が返されますか? –