繁体   English   中英

Textarea占位符文本

[英]Textarea placeholder text

苦苦挣扎,理解为什么我的文本区域中的占位符没有显示输入。

<textarea value="Begin your message..." onfocus="ClearPlaceHolder (this)" onblur="SetPlaceHolder (this)" class="contactForm" ></textarea>    

<script type="text/javascript">
    function ClearPlaceHolder (input) {
        if (input.value == input.defaultValue) {
            input.value = "";
        }
    }
    function SetPlaceHolder (input) {
        if (input.value == "") {
            input.value = input.defaultValue;
        }
    }
</script> 

我在这个脚本中将输入更改为输入,但是dosnt会改变什么吗?

为什么不直接使用HTML占位符?

<textarea placeholder="Please type something here..."></textarea>

在我看来,我会更优雅,它不需要任何JS。

这是因为textarea没有属性value
textarea的值在开始和结束标记之间:

<textarea onfocus="ClearPlaceHolder(this)" 
          onblur="SetPlaceHolder(this)" 
          class="contactForm">Begin your message...</textarea>

小提琴

您可以使用属性placeholder

<textarea placeholder="placeholder string"></textarea>

另请记住,textarea没有值属性,因为您可以在http://www.w3schools.com/tags/tag_textarea.asp中阅读值是一个属性,因此您使用的语句对于在文本区域中放置文本是正确的

input.value = "text";

但请记住, 创建和更改值属性不会更改value属性

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM