2013-07-15 83 views
0

如何使用Jquery获取textarea的默认值。我提到了以下问题 Default text on textarea jQuery? 但我越来越不确定的答案使用Jquery获取textarea的默认值

HTML:

<textarea id="comments">dsfdtert</textarea> 

的Jquery:

$(document).ready(function(){ 
    alert($('#comments').data('defaultval')); 
}); 

看到小提琴:http://jsfiddle.net/Kritika/7cmEc/

+1

如果您再次阅读该答案,您将看到代码使用'data()'将初始值与元素相关联。由于您不执行此步骤,因此稍后访问该数据的确会返回“未定义”。 –

+0

任何原因,你不能只使用直接的JavaScript? –

+1

@FrédéricHamidi:哎呀!! ..谢谢。我没有注意到这一点。 – Pbk1303

回答

6

在页面加载,你只需使用text()val()方法即可得到默认的文本textarea的:

$(document).ready(function(){ 
    alert($('#comments').text()); 
}); 

FIDDLE

设置默认的文本,以供以后使用的数据变量,你会怎么做:

$(document).ready(function(){ 
    $('#comments').data('default', $('#comments').text()); 
}); 

,以后你可以叫

var default = $('#comments').data('default'); 

找回它

+1

谢谢你:-)。我没有想到的直接答案。 .text()工作。 – Pbk1303

0

在Adeneo的答案上扩展,因为它没有开箱即用:

//保存文本区域的默认值,然后再修改它。

var textAreaDefault = $('#mailMessage').data('default', $('#mailMessage').val()); 

然后:

var defaults = $('#mailMessage').data('default'); 

textAreaDefault.val(defaults); 

我发现有一个名为默认不起作用因为这是一个保留关键字的值。