我无法找到问题的解决方案(或者我错过了),所以我试着从你那里得到答案。
我有以下html:
<input name="title" type="text" id="title" size="69" maxlength="30" onmouseout="CheckFieldLength(title, 'charcount2', 'remaining2', 30);" onkeydown="CheckFieldLength(title, 'charcount2', 'remaining2', 30);" onkeyup="CheckFieldLength(title, 'charcount2', 'remaining2', 30);"/></td>
我试图获取输入字段的字符长度如下:
<span id="charcount2">0</span> characters entered | <span id="remaining2">140</span> characters remaining
js文件如下所示:
function CheckFieldLength(fn,wn,rn,mc) {
var len = fn.value.length;
if (len > mc) {
fn.value = fn.value.substring(0,mc);
len = mc;
}
document.getElementById(wn).innerHTML = len;
document.getElementById(rn).innerHTML = mc - len;
}
但是,我只是不断收到以下错误:
uncaught typeerror cannot read property 'length' of undefined
你知道如何解决这个问题吗?
答案 0 :(得分:1)
使用这样的功能
CheckFieldLength(this, 'charcount2', 'remaining2', 30);
答案 1 :(得分:0)
使用此代替标题 !!
<input name="title" type="text" id="title" size="69" maxlength="30"
onmouseout="CheckFieldLength(this, 'charcount2', 'remaining2', 30);"
onkeydown="CheckFieldLength(this, 'charcount2', 'remaining2', 30);"
onkeyup="CheckFieldLength(this, 'charcount2', 'remaining2', 30);"/>
&#39;这&#39;关键字会将当前元素作为对象传递给javascript函数,其余部分将用于处理您的函数。