function trim(str),出了不该错的错

来源:百度文库 编辑:神马文学网 时间:2024/03/29 14:26:28
function trim(str){
return str.replace(/(^\s*)|(\s*$)/g,"");
}
上面的是一个js函数,可以用来去掉前后空格(如去掉用户登录名因输入不小心的前后空格)。
大家都知道js为自适应类型函数,所以str这样声明,使用。在js中是完全正确的。
所以如果当你使用了该函数,并且因为该函数而导致了程序的错误。原因只能是str不能获取值,而导致的。
如我犯的错:
function login(){
$("#name").val(trim($("#name").val()));
if( $("#name").val() == ""){
//alert("用户名不能为空");   alert()方法将会在你点击登陆时,会给出弹出框提示
$("#nameStatus").html("* 用户名不能为空");//这种写法将会在你点击登录时,直接在输入框后面给出提示。
return;
}else if($("#name").val().length <3||$("#name").val().length>10){
alert("用户名长度过长或过短");
return;
}else if($("#pwd").val() == ""){
alert("密码不能为空");
return;
}else if($("#pwd").val().length !=6){
alert("密码长度为6位");
return;
}
$("#frm")[0].submit();
}
function trim(str){
return str.replace(/(^\s*)|(\s*$)/g,"");
}
*********************************************************************************************************************
当我部署项目运行后,报空指针异常:并且根据提示找到就是上面的functions trim(str){}行。最终才明白,是因为我这个jsp页面的后面







这段代码的id值与login()方法中的#name,不一致。导致获取不到页面传过来的值,也就是str为空,当然会产生异常。
用户名: