在客户端读取asp.net控件

时间:2013-02-05 05:13:03

标签: javascript asp.net c#-4.0

我正在使用下面的javascript来读取客户端的asp.net控件的值。但是,它始终返回空值。我在我的网站的其他页面上使用类似的代码,但现在我无法阅读这个特定的控件。无论如何我都可以建议我解决这个问题。

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

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

3 个答案:

答案 0 :(得分:0)

尝试使用单引号:

var srch_data = document.getElementById('<%= srch_data.ClientID %>').value;

答案 1 :(得分:0)

试试这个

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

ASP.Net Label在渲染后变为跨度,而不是找到JS无法识别的标签更好找

答案 2 :(得分: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>

这可以解决您的问题。