首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向文本框添加默认值

向文本框添加默认值
EN

Stack Overflow用户
提问于 2011-07-12 06:29:56
回答 1查看 5.4K关注 0票数 0

我使用以下脚本将默认值添加到输入文本框中:

代码语言:javascript
复制
$('.default-value').each(function() {
    var default_value = this.value;
    $(this).css('color', '#746F66'); // this could be in the style sheet instead
    $(this).focus(function() {
        if(this.value == default_value) {
            this.value = '';
            $(this).css('color', 'black');
        }
    });
    $(this).blur(function() {
        if(this.value == '') {
            $(this).css('color', '#746F66');
            this.value = default_value;
        }
    });
});

格式如下:

代码语言:javascript
复制
<form method="post" action="contactengine.php">
    <input type="textbox" class="default-value" name="Name" id="Name" value="Full Name">

    <input type="textbox" class="default-value" name="Email" id="Email" value="Email">

    <textarea name="Message" class="default-value" name="Message" id="Message" value="Your message"></textarea>

    <input type="submit" name="submit" id="submit" value="Submit" class="submit-button" />
</form>

默认值适用于文本框,但我不知道如何将默认值放入文本区域。目前,文本区域中没有显示任何内容,正如您所看到的here

有人能帮个忙吗?

谢谢,

尼克

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-12 06:32:16

尝试更改此行:

代码语言:javascript
复制
var default_value = this.value;

至:

代码语言:javascript
复制
var default_value = $(this).val();

这是因为textarea没有value属性,要为此元素分配默认文本,只需将文本放在元素的开始标记和结束标记之间,如下所示:

代码语言:javascript
复制
<textarea name="Message" class="default-value" name="Message" id="Message">Your message.</textarea>

JS Fiddle demo

在Chromium 12/Ubuntu11.04中测试后编辑了,发现就JavaScript而言(至少对于这个浏览器/平台),var default_value = this.value;可以正确地分配default_value

JS Fiddle demo

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6657471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档