<asp:TextBox runat="server" ID="Nm" onblur="CheckNm(this.value)" />
<asp:TextBox runat="server" ID="Pwd" onblur="CheckPwd(document.getElementById('<%=Nm.ClientID %>').value,this.value)" />报错document.getElementById("<%=Nm.ClientID %>") is null传入Nm的客户端ID: ctl00_ContentPlaceHolder1_Nm就可以如何将Nm的值传 给Js方法CheckPwd呢?在服务器端给Pwd加onblur属性的方法之外哦
<asp:TextBox runat="server" ID="Pwd" onblur="CheckPwd(document.getElementById('<%=Nm.ClientID %>').value,this.value)" />报错document.getElementById("<%=Nm.ClientID %>") is null传入Nm的客户端ID: ctl00_ContentPlaceHolder1_Nm就可以如何将Nm的值传 给Js方法CheckPwd呢?在服务器端给Pwd加onblur属性的方法之外哦
比如
var pwd = document.getElementById('<%=Nm.ClientID %>').value ;
onblur="CheckPwd(document.getElementById('<%=Nm.ClientID %>').value,this.value)"
生成出来变成了这样 。
Pwd.Attributes["onblur"]="document.getElementById('"+Nm.ClientID+"').value,this.value)";
可是,如何才能让它按我们希望的情况工作呢?
这个放到你那个函数里吧.
var v1 = document.getElementById('<%=Nm.ClientID %>').value;
var v2 = document.getElementById('<%=Pwd.ClientID %>').value;
}
情况估计是这样的
<asp:TextBox runat="server" ID="Pwd" onblur="CheckPwd(document.getElementById('<%=Nm.ClientID %>').value,this.value)" />
这个东西根本就不是一个html,而是个xml表示,他其实在.net中是一个定义好的个类,然后实例化对象,再运行,再输出html, 你这个onblur根本不是asp.net服务器控件的属性,asp.net无视他的
说白了就是asp.net输出html的时候
Response.Write("onblur='<%=Nm%>'")这样样子差不多asp.net在加载页面时候有各种各样的事件也有各种顺序应该先了解这些