2010-08-20 164 views
2

我試圖在每次字段更改時執行一個函數。剛上手,我使用的是簡單的textarea和一個div:jQuery keypress()事件偵聽器問題

<div id="text"></div> 
<textarea id="stuff"></textarea> 

<script type="text/javascript"> 
    $("#stuff").keypress(function() { 
     $("#text").text($("#stuff").val()); 
    }); 
</script> 

這工作,但它始終是一個字符後面。如果我在textarea上輸入「Hello」,div就會說「Hell」。

我在做什麼錯?

回答

4

嘗試可以解決它的.keyUp()。

+0

愚蠢的我。這解決了它。 – Aillyn 2010-08-20 20:28:12

+1

itym keyup()。資本化問題... – cbmanica 2012-04-30 18:04:23

1

keypress事件在textarea根據發生的按鍵更新它的值之前觸發,否則處理程序將無法取消該事件。

請看這裏:http://jsfiddle.net/zDMbJ/如果按下的鍵是'A',它可以任意取消一個事件。

0

試試這個:

<script type="text/javascript"> 
    $("#stuff").keyup(function() { 
     $("#text").html($(this).val()); 
    }); 
</script> 

http://jsbin.com/ibido3/edit