function chklen(obj,len)
{
obj.value=obj.value.trim();//去除头尾空格
if (obj.value.lenX()>len)
{
alert("抱歉,长度不能大于"+len+"个字符(一个中文等于两个字符)");
obj.focus();obj.className="onErr";
return false;
}
}
function chktitle(obj){
obj.value=obj.value.trim();
if(obj.value!=""){
var regx = /([^a-z0-9\u4e00-\u9fa5])(?=\1+)\1+/g;
obj.value = obj.value.replace(regx,"$1");
}}以上两个函数我单独调用没有问题。<input id="title" name="title" type="text" size="42" maxlength="60" onblur="chktitle(this);chklen(this,60)">但如果想要在一个函数中调用另一个,就出问题了
function chktitle(obj){
obj.value=obj.value.trim();
if(obj.value!=""){
var regx = /([^a-z0-9\u4e00-\u9fa5])(?=\1+)\1+/g;
obj.value = obj.value.replace(regx,"$1"); }
chklen(obj,60);}<input id="title" name="title" type="text" size="42" maxlength="60" onblur="chktitle(this)">请问怎么样才能在一个函数中调用另一个函数呢,并且变量能顺利传递?
String.prototype.trim = function(){
return this;
}
String.prototype.lenX = function(){
return this.length;
}function chklen(obj,len)
{
obj.value=obj.value.trim();//去除头尾空格
if (obj.value.lenX()>len)
{
alert("抱歉,长度不能大于"+len+"个字符(一个中文等于两个字符)");
obj.focus();obj.className="onErr";
return false;
}
alert("ok");
}
function chktitle(obj){
obj.value=obj.value.trim();
if(obj.value!=""){
var regx = /([^a-z0-9\u4e00-\u9fa5])(?=\1+)\1+/g;
obj.value = obj.value.replace(regx,"$1"); }
chklen(obj,6);
}</script>
<input id="title" name="title" type="text" size="42" maxlength="60" onblur="chktitle(this)">
Object不支持直接使用以下属性的:
1)obj.value.lenX
2)obj.value.trim()
所以你要先定义啊:2楼正解