我在textarea中的文字/价值并不是一成不变的 - 我正在唠叨它。我无法获得当前价值。 例如 1
<textarea>
Lorem ipsum
</textarea>
//it's defalut in html file
2
Putting into textarea: Dolores is lorem ipsum
警报仅显示1个版本(&#34; lorem ipsum&#34;),但不显示第二个版本(&#34; Dolores是lorem ipsum&#34;)。我试图在jquery中这样做:
var variable = $("#selector").val();
alert(variable);
我做错了什么?
我想抓住变量:)不要提醒。警报只是我的测试:)
答案 0 :(得分:1)
$('textarea').change(function() {
alert($(this).val());
});
答案 1 :(得分:1)
尝试将alert()
与事件联系起来:
$('textarea').change(
function(){
alert($(this).val());
});
参考文献:
答案 2 :(得分:1)
您使用的代码是正确的。查看demo
答案 3 :(得分:1)
var text = $('#textareaID').val();
$('#textareaID').change(function() {
text = $(this).val();
});
什么时候你想要文本只是引用它:)
编辑:
如果您使用标签页UI,请查看docs和活动管理:
Place This outside of bound scope:
var text = $('#textareaID').val(); OR var text = '';
$('#example').bind('tabsselect', function(event, ui) {
// Objects available in the function context:
// ui.tab anchor element of the selected (clicked) tab
// ui.panel element, that contains the selected/clicked tab contents
// ui.index zero-based index of the selected (clicked) tab
// INSIDE HERE IS WHERE YOU CAN PUT THE CODE IN THE ABOVE EXAMPLE
$('#textareaID').change(function() {
text = $(this).val();
});
});
注意:$('#example')将是包含标签和内容的父div
进一步优化建议。
如果你认为经常会调用$('#textareaID')你可能想要缓存对它的引用,这样选择器引擎就不必在每个实例上找到它,这可以这样做:
var textarea = $('#textareaID');
var text = $('#textareaID').val();
对于这一行:
var textarea = $('#textareaID');
确保它在$(文件).ready(function(){})内;调用并且元素存在
您可以通过执行以下操作来检查:
var textarea = $('#textareaID') || false;
将上面的代码包装成如下:
$('#example').bind('tabsselect', function(event, ui) {
// Objects available in the function context:
// ui.tab anchor element of the selected (clicked) tab
// ui.panel element, that contains the selected/clicked tab contents
// ui.index zero-based index of the selected (clicked) tab
// INSIDE HERE IS WHERE YOU CAN PUT THE CODE IN THE ABOVE EXAMPLE
if(textarea) {
textarea.change(function() {
text = $(this).val();
});
}
});
希望这有帮助!
答案 4 :(得分:1)
听起来您正试图在值更改之前将.val()
分配给变量。你是正确的,因为你想使用.val()
。试试这个jsfiddle,看看variable
,.val()
,.text()
和.html()
产生的差异。