asp.net 中用JS为什么不能对LABEL赋值

<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="test.aspx.cs"Inherits="test"%><!D... <%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %>

<!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>无标题页</title>
<script language="javascript" type="text/javascript">
function fun()
{
alert("ALSDJASLKD");
var a=document.getElementById("label1").innerText;
alert(a);
document.getElementById('label1').innerText="textbox失去焦点"; //注意label在js中用innerText取值,或用innerHTML取值,还要注意innerText中只有T大写,好难记啊,这么复杂
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label1" runat="server" Text="aaa"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server" onblur="fun()" ></asp:TextBox>

</div>
</form>
</body>
</html>

如这段代码。。。LABEL的值不变
展开
 我来答
舜天迫击炮
推荐于2017-08-15 · TA获得超过630个赞
知道小有建树答主
回答量:708
采纳率:50%
帮助的人:195万
展开全部
Label在客户端显示的就是一个文字,本身没有ID和Name属性,要重新赋值,要得到它在哪个标签里,标签的ID,才可以用JS赋值(使用标签的InnerHTML=重新赋值。)

但是,就算你重新赋值了,重新提交到后台,PostBack回来,赋值就会丢了。
因为ASP.NET记住了你初始化的值。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
songme2000
2010-10-19 · TA获得超过269个赞
知道小有建树答主
回答量:590
采纳率:0%
帮助的人:423万
展开全部
种种原因,比如模版页,比如框架,在服务器端的ID,在客户端都不是原来的ID了,比如,ctl00_label1,所以需要获取它在客户端的ID才可以在就JS中访问。。11级那位回答完全正确!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b0026fc
2010-10-19 · TA获得超过8431个赞
知道大有可为答主
回答量:8845
采纳率:60%
帮助的人:1.7亿
展开全部
document.getElementById("<%=label1.ClientID%>")
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来元彤8O
2010-10-19 · TA获得超过1451个赞
知道小有建树答主
回答量:759
采纳率:0%
帮助的人:257万
展开全部
LS正解!~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式