再发一遍,看看有没人回答!!!
环境:Visual Studio 2008
语言:C#
程序:ASP.NET
首先我在后台加载如下代码:
protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack)
{
LinkButton2.Attributes.Add("onclick","checkpassword("+TextBox8.Text+")");
}
}
注:TextBox8为密码输入框。LinkButton2的Text值为“检查密码”。
然后在前台编写如下代码:
function checkpassword(textboxvalue)
{
if(this.form1.TextBox8.value!=null&&this.form1.TextBox8.value!="")
{
var str=textboxvalue;
var Expression=/^[A-Za-z0-9]{7,10}$/;
var objExp=new RegExp(Expression);
if(objExp.test(str)==false)
{
alert("密码必须由7-10位字母或数字组成!");
//document.getElementById("Label18").innerHTML="密码必须由7-10位字母或数字组成!";
return;
}
else
{
alert("密码输入无误!");
//document.getElementById("Label18").innerHTML="密码输入无误!";
return;
}
}
else
{
alert("请先输入密码!");
this.form1.TextBox8.value="";
this.form1.TextBox8.focus();
}
}
现在问题出来了:
不管我在密码输入框中输入的密码合不合乎正则表达式规范,最终都会出现alert("密码输入无误!");
alert("密码必须由7-10位字母或数字组成!");根本不会出现。
就是说不管我的密码输入对不对,它都会提示我对的。
请问我的问题到底出在哪里?该如何修改????
以下是有人给我的回帖原文:
已经在load事件里执行 LinkButton2.Attributes.Add("onclick","checkpassword("+TextBox8.Text+")");
所以在以后不管你在TextBox8输入什么值,当你点击LinkButton2时传递的TextBox8.Text都是load时的值
有没人告诉我,以上回帖是什么意思?我想知道具体代码该怎么写????