Textarea 占位符文本
Posted
技术标签:
【中文标题】Textarea 占位符文本【英文标题】:Textarea placeholder text 【发布时间】:2014-09-15 19:05:43 【问题描述】:努力理解为什么我的文本区域中的占位符没有显示输入。
<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>
我将替换它在此脚本中输入的位置绑定,但它并没有改变任何东西?
【问题讨论】:
【参考方案1】:为什么不直接使用 html 占位符呢?
<textarea placeholder="Please type something here..."></textarea>
我认为我会更优雅,它不需要任何 JS。
【讨论】:
【参考方案2】:这是因为textarea
没有value
属性。textarea
s 值位于开始标签和结束标签之间:
<textarea onfocus="ClearPlaceHolder(this)"
onblur="SetPlaceHolder(this)"
class="contactForm">Begin your message...</textarea>
Fiddle
【讨论】:
【参考方案3】:你可以使用属性placeholder
:
<textarea placeholder="placeholder string"></textarea>
【讨论】:
我不能使用 html5,因为网站的主要受众是 IE 用户。 (可悲的是老 IE 用户)【参考方案4】:还要记住 textarea 没有价值 attribute 你可以在http://www.w3schools.com/tags/tag_textarea.asp中读到 值是一个属性,因此您使用的语句对于将文本放入文本区域是正确的
input.value = "text";
但请记住,创建和更改值属性不会更改值属性。
【讨论】:
以上是关于Textarea 占位符文本的主要内容,如果未能解决你的问题,请参考以下文章