最初,我的文本区域的值为 Enter Comment... 通过 <textarea>Enter Comment...</textarea>
设置
我有一个 .focus 像:
$("textarea.commentTextArea").live('focus', function() {
if($(this).val() == "Enter Comment...") {
$(this).val('');
}
});
和一个 .blur() 像:
$("textarea.commentTextArea").live('blur', function() {
if($(this).val() == "Enter Comment..." || $(this).val() == "") {
$(this).text("Enter Comment...");
$(this).parent().addClass("hide");
$(this).parent().hide();
}
});
但是,在我在 .blur() 函数中设置 val 并尝试使用 .val() 检索值后,它总是返回“输入评论...”,而不是用户输入的文本。我在这里不知所措。
感谢您的帮助!
编辑 - 我有一个更深入的“文本区域”选择器,这不是问题所在。如果选择器返回 null,它不会返回“Enter Comment”。感谢您尝试。 我的 .focus() 函数也是如此。我只是想展示正在发生的事情的核心
最佳答案
第二个语句中的“textarea”一词没有引号。此外,如果用户返回文本区域再次编辑,您的焦点事件将删除用户输入的任何内容。
这样做是为了解决第二个问题(与您在模糊事件中使用的技巧相同):
$("textarea").focus(function() { if ($(this).val() == 'Enter Comment...') $(this).val(''); });
关于javascript - textarea.val() 设置和获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4229732/