页面加载时文本框中的默认文本

时间:2009-09-25 12:03:25

标签: asp.net javascript ajaxcontroltoolkit

一般情况下,我看到文本框中的任何注册表都填写了例如输入名字或输入姓氏,就像我怎么写这样。是javascript吗? 你能告诉我怎么写这样的话能帮助我谢谢

4 个答案:

答案 0 :(得分:3)

你想要的是TextBoxWatermark。 AJAX控件工具包有一个。

此外,还有一个自定义ASP.NET Textbox Watermark的示例。

编辑:以下示例来自上面引用的链接

控制加价:

<asp:textbox id="txtSimpleSearch" runat="server"></asp:TextBox>

JS功能:

function WatermarkFocus(txtElem, strWatermark) {
if (txtElem.value == strWatermark) txtElem.value = '';
}
function WatermarkBlur(txtElem, strWatermark) {
if (txtElem.value == '') txtElem.value = strWatermark;
}

代码背后:

string strWatermarkSearch = "Search";
txtSimpleSearch.Text = strWatermarkSearch;
txtSimpleSearch.Attributes.Add("onfocus", "WatermarkFocus(this, '" + strWatermarkSearch + "');");
txtSimpleSearch.Attributes.Add("onblur", "WatermarkBlur(this, '" + strWatermarkSearch + "');");

答案 1 :(得分:3)

根据您对凤凰的帖子的评论,您可以尝试这样的事情:

    <input type="text" value="Enter your name..." onfocus="CheckText(this, 'Enter your name...');" />
    <script language="javascript">
    function CheckText(e, text){
        if(e.value == text){
            e.value = '';
        }
    }
</script>

答案 2 :(得分:1)

正如您自己建议的那样,您可以使用onload事件上调用的JavaScript,例如:

<body onload="document.getElementById('firstName').value = 'Enter first name'" ...>

您可以在函数中对多个指令进行分组,然后在onload上调用它。

或者您可以直接在输入中设置值:

<input type="text" id="firstName" name="firstName" value="Enter first name" />

答案 3 :(得分:0)

您必须将文本框的value属性设置为所需的文本,如

<input type="text" id="txt1" value="Enter text here" />

当输入获得焦点并且该值是默认值时,则清除该值。如果用户没有输入任何内容,并且当焦点离开文本框时,则将默认值返回到文本框。

另外,请确保不使用默认值更新数据库。