环境:Visual Studio 2008
语言:C#
程序:ASP.NET首先我在后台代码中做如下操作:
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
TextBox1.Attributes.Add("onblur", "textboxonblur(" + TextBox1.ClientID + ")");
TextBox2.Attributes.Add("onblur", "textboxonblur(" + TextBox2.ClientID + ")");
TextBox3.Attributes.Add("onblur", "textboxonblur(" + TextBox3.ClientID + ")");
TextBox4.Attributes.Add("onblur", "textboxonblur(" + TextBox4.ClientID + ")");
TextBox5.Attributes.Add("onblur", "textboxonblur(" + TextBox5.ClientID + ")");
TextBox6.Attributes.Add("onblur", "textboxonblur(" + TextBox6.ClientID + ")");
TextBox7.Attributes.Add("onblur", "textboxonblur(" + TextBox7.ClientID + ")");
TextBox8.Attributes.Add("onblur", "textboxonblur(" + TextBox8.ClientID + ")");
}
}然后在前台HTML环境中编写textboxonblur()函数:
<SCRIPT language="javaScript">
function textboxonblur(id)
{
if(document.getElementById(id).value=="")
{
document.getElementById(' <%=Label17.ClientID%>').style.display="block";
}
}
</SCRIPT>
我的目的是让8个.net组件TextBox组件共用一个textboxonblur()函数,当任何一个TextBox组件失去焦点时,检查其是否输入值。如果未输入值,则将提示为"输入值不能为空"的Label17标签显示出来。我总怀疑我的代码哪里写错了。现在请高手帮我检查一下,我到底错在哪里?正确代码该如何写?请详细说明!!!!!!!!!!!!!
语言:C#
程序:ASP.NET首先我在后台代码中做如下操作:
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
TextBox1.Attributes.Add("onblur", "textboxonblur(" + TextBox1.ClientID + ")");
TextBox2.Attributes.Add("onblur", "textboxonblur(" + TextBox2.ClientID + ")");
TextBox3.Attributes.Add("onblur", "textboxonblur(" + TextBox3.ClientID + ")");
TextBox4.Attributes.Add("onblur", "textboxonblur(" + TextBox4.ClientID + ")");
TextBox5.Attributes.Add("onblur", "textboxonblur(" + TextBox5.ClientID + ")");
TextBox6.Attributes.Add("onblur", "textboxonblur(" + TextBox6.ClientID + ")");
TextBox7.Attributes.Add("onblur", "textboxonblur(" + TextBox7.ClientID + ")");
TextBox8.Attributes.Add("onblur", "textboxonblur(" + TextBox8.ClientID + ")");
}
}然后在前台HTML环境中编写textboxonblur()函数:
<SCRIPT language="javaScript">
function textboxonblur(id)
{
if(document.getElementById(id).value=="")
{
document.getElementById(' <%=Label17.ClientID%>').style.display="block";
}
}
</SCRIPT>
我的目的是让8个.net组件TextBox组件共用一个textboxonblur()函数,当任何一个TextBox组件失去焦点时,检查其是否输入值。如果未输入值,则将提示为"输入值不能为空"的Label17标签显示出来。我总怀疑我的代码哪里写错了。现在请高手帮我检查一下,我到底错在哪里?正确代码该如何写?请详细说明!!!!!!!!!!!!!
Label17对应的<span>标签,document.getElementById(' <%=Label17.ClientID%>')取不到东西,
你的提示也就出不来。
TextBox1.Attributes.Add("onblur", "textboxonblur(" + TextBox1.ClientID + ")");
这样比较简单
TextBox1.Attributes.Add("onblur", "textboxonblur(this)");
客户端脚本改为
<SCRIPT>
function textboxonblur(obj)
{
if(this.value=="")
{
document.getElementById('<%=Label17.ClientID%>').style.display="block";
}
}
</SCRIPT>
if(obj.value=="")
{
document.getElementById(' <%=Label17.ClientID%>').style.display="block";
}