我在javascript中有一段代码计算的东西,
asp.net应用程序中有一个标签,如何从javascript中获取它的值?
这是我尝试过的:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication1.Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>JASP</title>
<script type="text/javascript">
var x = document.getElementById("Label1").innerHTML;
alert(x);
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:Label ID="Label1" runat="server" Text="My Text"></asp:Label>
</form>
</body>
</html>
答案 0 :(得分:1)
试试这个:
var data = document.getElementById('<%=Label1.ClientID%>').innerHTML;
<强>更新强>
创建一个函数,将代码放在其中并在适当的位置调用它。例如:
<script type="text/javascript">
function displayText() {
var x = document.getElementById('<%=Label1.ClientID%>').innerHTML;
alert(x);
}
</script>
现在在必要时调用函数displayText()
。
答案 1 :(得分:1)
如果您检查了已呈现的源代码,则会看到Label
已转换为HTML span
标记,并且ID
也已重新呈现以确保它是独一无二的。
因此,您可以使用ClientID
属性找出呈现的ID
的内容:
var x = document.getElementById('<%=Label1.ClientID%>').innerHTML;
答案 2 :(得分:0)
您可以使用以下代码获取值:
var value = document.getElementById('Label1').innerHTML
注意:理想情况下,您只需要文本而非HTML,但如果您必须支持9之前的Internet Explorer版本,则需要使用textContent
和innerText
的组合