调用Javascript方法从asp.net页面
问题描述:
我有一个webview显示asp.net页面。我不能设置价值的asp.net标签或任何控制从JavaScript调用andriod方面,但如果页面是在HTML然后我可以设置任何HTML控制的价值。有谁知道为什么这个问题会发生调用Javascript方法从asp.net页面
这里是我的代码:
StringBuilder buf=new StringBuilder("javascript:document.getElementById('lblStartTime').innerHTML='");
buf.append(mTimeDisplay);
buf.append("';");
webview.loadUrl(buf.toString());
而且在aspx文件:
<asp:Label ID="lblStartTime" runat="server" ClientIDMode="Static" Text="00:00"></asp:Label>
我曾与asp.net甚至HTML标记范围的任何其他控制试过。标签。
答
您的ASP .NET控件几乎可以肯定有一个不同的客户端ID到您提供的服务器端ID。一个简单的方法来验证这是查看您生成的网页的来源。
如果您使用的是.NET 4.0,则您可以更好地控制ASP .NET为您的客户端标签创建的ID。
如果不是,每个控件的ClientID属性会告诉你客户端的ID是什么。使用这个而不是服务器ID来通过Javascript访问你的元素。
StringBuilder buf=new StringBuilder("javascript:document.getElementById('" + lblStartTime.ClientID "').innerHTML='");
buf.append(mTimeDisplay);
buf.append("';");
webview.loadUrl(buf.toString());
谢谢...你可能看到我已经控制客户端ID我的ClientIDMode =“静态”。这不是一个问题,因为我不能分配任何HTML标签。 – 2011-05-30 15:01:17