2015-03-13 41 views
0

嗨,我有一個HTML文本區。我希望用戶輸入的內容在屏幕上顯示,並存儲在一個變量中。我有顯示部分,但我無法弄清楚如何將它作爲一個變量存儲。如何將textarea中的用戶類型設置爲javascript變量?

的HTML

<textarea id="input" maxlength="50" name="Text" placeholder="Max. 50 characters"></textarea> 

JavaScript的

$('#input').keyup(function() { 
     $('#text').html($(this).val()); 
     var yourText = this.val(); 
    }); 

回答

2

首先,你應該使用changeinput,而不是keyup。不是每個人都使用鍵盤!

其次,只有jQuery對象有一個val()方法。使用this你指的是<textarea>元件,它不會:

$('#input').on("input", function() { 
    var yourText = $(this).val(); // Only jQuery objects have a .val() 
    $('#text').html(yourText); // Pass your variable in here 
}); 

jsFiddle Demo

2
$('#input').keyup(function() { 
     $('#text').html($(this).val()); 
     var yourText = this.val(); 
    }); 

應該

$('#input').keyup(function() { 
     $('#input').html($(this).val()); 
     var yourText = $(this).val(); 
    }); 

你給#text作爲ID,但ID名稱輸入是#輸入

+0

我想我我錯了。 – Acer 2015-03-13 18:19:12

1

你忘了ja vascript關閉$就可以了。使用下面的代碼

<textarea id="input" maxlength="50" name="Text" placeholder="Max. 50 characters"></textarea> 
<div id="text1"></div> 
<script> 
$('#input').keyup(function() { 
     $('#text').html($(this).val()); 
     var yourText = $(this).val(); 
    $("#text1").html(yourText); 
    }); 
</script> 

的jsfiddle:http://jsfiddle.net/7tfs93o2/

希望這有助於你

1

你正在做var yourText = this.val();但由於使用的是JQuery的存在,.val()是一個jQuery方法,this也應與包裝JQuery圖層是這樣的:

var yourText = $(this).val();

相關問題