JQUERY在键入

问题描述

的同时将文本框的内容复制到字段中。 我正在尝试在用户键入时将文本框的内容同时复制到div中。这是JSfiddle上的代码 面临的错误是,在div中复制的值的长度始终比文本框的长度小1。我在脚本中犯了什么错误?     

解决方法

        改用
keyup
$(\"#boxx\").keyup(function(event) {
  var stt = $(this).val();
  $(\"div\").text(stt);
});
当按下键并想要释放键时传送文本时,会出现“ 2”。     ,        keyup和keypress事件适用于键盘输入,但是如果使用鼠标右键单击并将某些内容粘贴到文本框中,则不会获取值更改。您可以在输入事件中使用
bind
来注册键盘输入和粘贴事件,如下所示:
$(\"#textbox1\").bind(\'input\',function () {
   var stt = $(this).val();
   $(\"#textbox2\").val(stt);
});
    ,        updated2ѭ事件发生在text6ѭ元素中的文本更新之前。您可以延迟复制操作来解决此问题。即使是0毫秒的延迟也足以在元素更新后进行复制操作:
$(\"#boxx\").keypress(function() {
    var $this = $(this);
    window.setTimeout(function() {
       $(\"div\").text($this.val());
    },0);
});
在这里更新了小提琴。     ,        
$(\"#title\").keypress(function() {
                var $this = $(this);
                window.setTimeout(function() {

                   $(\"#slug-url\").val($this.val().toLowerCase().replace(/ /g,\'-\'));
                },0);
            });
在使用\'-\'替换空格并将文本更改为小写字母后,使用@FrédéricHamidi \'方法生成seo友好的url。     ,        使用keyup并同时更改两者。
$(\"#boxx\").on(\'keypress change\',function(event) {
       var data=$(this).val();
       $(\"div\").text(data);
});
这是例子 http://jsfiddle.net/6HmxM/785/     ,        
$(\"#boxx\").keyup(function() {
    var $this= $(this);
    window.setTimeout(function() {
       $(\"div\").text($this.val());
    },0);
});
这项工作正常。 复制也有效f9
enter code here