在输入新文本时防止文本区域被清除

问题描述:

这是我的文本区域代码。在输入新文本时防止文本区域被清除

<textarea style="width: 95%;" rows="6" name="feedback[<?=$r_uid;?>]" disabled="disabled" onclick="this.value='';" onblur="this.value=!this.value?'No feedback provided':this.value;" maxlength="800"></textarea> 

当用户点击它时,它将被清除。如果它们保持空白,则会显示“没有提供反馈”文本。但是,如果他们键入其他内容并在框外单击,则文本区域将保留该框。

然而,问题是如果他们在框中点击。输入的新文本被清除。如果输入新文本,是否有办法阻止它清除?

谢谢!

添加到您的onClick事件:

if (this.value == 'No feedback provided') this.value = ''; 

... 请注意,您只针对click!那么键盘导航?使用onfocus代替onclick

<textarea style="width: 95%;" rows="6" name="feedback[<?=$r_uid;?>]" disabled="disabled" 
onfocus="if (this.value == 'No feedback provided') this.value = '';" onblur="this.value=!this.value?'No feedback provided':this.value;" maxlength="800"></textarea> 

注意,内嵌脚本已过时,难以阅读和维护。

+1

谢谢!正是我需要的。内联脚本建议+1。我仍然在努力学习绳索。再次,谢谢。 – 2012-03-27 09:38:59

代码中的这部分将清除它。删除它;)

onclick="this.value='';" 

基本上,当点击元素时,点击元素的值=''。如此空洞。