Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在同一页面上的3个不同文本字段上使用向上键功能?_Javascript_Forms_Character_Keyup - Fatal编程技术网

Javascript 如何在同一页面上的3个不同文本字段上使用向上键功能?

Javascript 如何在同一页面上的3个不同文本字段上使用向上键功能?,javascript,forms,character,keyup,Javascript,Forms,Character,Keyup,我有3个文本字段,我正在使用下面的javascript计算英文和中文字符的剩余字符,因此它将根据unicode更改为160个字符或70个字符。这不是问题所在。问题是它们的键控功能似乎只在其中一个字段上起作用。这三种方法都不管用。请帮忙? 提前很多钱 作用${ $.fn.smsArea=函数选项{ 变量 e=这个, 剪切长度=0, s=$.extend{ 切:是的, maxSmsNum:2, 间隔时间:400,, 计数器:{ 消息:$'smsCount', 字符:$'smsLength' },

我有3个文本字段,我正在使用下面的javascript计算英文和中文字符的剩余字符,因此它将根据unicode更改为160个字符或70个字符。这不是问题所在。问题是它们的键控功能似乎只在其中一个字段上起作用。这三种方法都不管用。请帮忙? 提前很多钱

作用${ $.fn.smsArea=函数选项{ 变量 e=这个, 剪切长度=0, s=$.extend{ 切:是的, maxSmsNum:2, 间隔时间:400,, 计数器:{ 消息:$'smsCount', 字符:$'smsLength' }, 长度:{ ascii:[160306459], unicode:[70134201] } },选项; $'day1content'.keyup函数{ clearTimeoutthis.timeout; this.timeout=setTimeoutfunction{ 变量 smsType, smsLength=0, smsCount=-1, charsLeft=0, text=$'day1content'.val, isUnicode=false; forvar charPos=0;charPos127&&text[charPos]!=€&&isUnicode=true 如果text.charCodeAtcharPos>127&&text[charPos]!=€ isUnicode=true; } ifisUnicode smsType=s.length.unicode; else smsType=s.length.ascii; forvar Scont=0;Scont如果smslength我不知道为什么要为每个输入多次重新创建插件smsArea,这实际上是个问题,如果你想让代码像这样运行,你可以将插件的名称更改为smsArea1,2等,然后让每个输入调用自己的插件,但这不是一个好的做法

一个更好的方法是只使用一个插件,并为其提供您想要的每个输入的任何特定选项

下面是一个工作示例

功能${ $.fn.smsArea=功能选项{ 变量 e=这个, 剪切长度=0, s=$.extend{ 切:是的, maxSmsNum:2, 间隔时间:400,, 长度:{ ascii:[160306459], unicode:[70134201] } },选项; $this.keyup函数{ var$this=$this; clearTimeoutthis.timeout; this.timeout=setTimeoutfunction{ 变量 smsType, smsLength=0, smsCount=-1, charsLeft=0, text=$this.val, isUnicode=false; 对于var charPos=0;charPos127&&text[charPos]!=€&&isUnicode=true 如果text.charCodeAtcharPos>127&&text[charPos]!=€ isUnicode=true; } 如果isUnicode smsType=s.length.unicode; else smsType=s.length.ascii; 对于var scont=0;scont如果SMSLENGHT Thx Ahmed Farahat.我会尝试更换smsArea,然后再试一次。