0

以下のJavaScriptを使用して、クライアント側のasp.netコントロールの値を読み取ります。ただし、常にnull値を返します。Webサイトの他のページで同様のコードを使用していますが、この特定のコントロールを読み取ることができません。とにかく私がこの問題を解決できることを提案してください。

<asp:Label ID="srch_data" runat="server" ClientIDMode="Static" ></asp:Label>

var srch_data = document.getElementById("<%= srch_data.ClientID %>");
alert(srch_data);
4

3 に答える 3

0

一重引用符を使用してみてください。

var srch_data = document.getElementById('<%= srch_data.ClientID %>').value;
于 2013-02-05T05:21:11.093 に答える
0

これを試して

var srch_data =document.getElementById('srch_data').innerHTML;

ASP.Net ラベルはレンダリング後にスパンになるため、JS で認識できないラベルを見つける代わりに、

于 2013-02-05T05:38:59.513 に答える
0

スクリプト要素に defer 属性を追加します。テストしましたが、うまくいきました。以下のようなものを試してください -

<%--defer indicates the script to be run after the document is completely parsed.--%>
<script type="text/javascript" language="javascript" defer="true">
        var label = document.getElementById("<%= srch_data.ClientID %>");
        alert("label : " + label);
</script>
<asp:Label ID="srch_data" runat="server" ClientIDMode="Static"></asp:Label>

これで問題が解決するはずです。

于 2013-02-05T05:50:06.333 に答える