0
<input type="text" 
       name='username'  
       onblur="if(this.value=='')this.value='Username';" 
       onfocus="if(this.value=='Username')this.value='';"
       value="Username" 
       class="register"/>

这是我正在使用的代码,但是我的代码设置方式我希望在用户输入他们的信息之前在字段中可以查看文本,但是现在设置表单的方式是

value="<?php echo $db_first_name; ?>"

但我正在使用的代码需要

value="Username"

在用户单击之前在字段中显示用户名并输入他们自己的信息。

我试过

value="Username<?php echo $db_first_name; ?>" 

但显然这不起作用。有任何想法吗?

查看表单功能的链接:http: //odconnect.com/beta/registration2.php

4

2 回答 2

4

试试这个placeholder属性(从 HTML5 开始有效):

<input type="text" name="username" id="username" placeholder="Username" value="<?= $db_first_name; ?>" />

或者(换句话说,如果您想支持其浏览器不支持 HTML5 的用户),您可以测试该用户是否已经输入了用户名。如果是null或空字符串,则将值设置为“用户名”,否则,将值设置为 的值$db_first_name。然后更改 onBlur 事件以检查字段值的长度,如果长度为零,则显示“用户名”。最后,更改 onFocus 事件以侦听鼠标单击 - 当用户将焦点放在字段上时,将值设置为空字符串。

<input type="text" name="username" id="username" value="<?= $db_first_name == "" ? "Username" : $db_first_name ?>" onBlur="checkUsernameBlur(this, 'Username');" onFocus="checkUsernameFocus(this, 'Username');" />

<script type="text/javascript" language="javascript>
    function checkUsernameBlur(inputObj, label) {
        var strLen = inputObj.value.length;
        if (strLen == 0) {
            inputObj.value = label;
        }
    }

    function checkUsernameFocus(inputObj, label) {
        var value = inputObj.value;
        if (value == label) {
            inputObj.value = "";
        }
    }
</script>
于 2012-08-13T18:59:51.207 回答
-1

要在较低的 html 版本中工作,不仅要在 html5 中将所有三个位置的用户名文本更改想要的单词或 php 变量

<input type="text"  name='username'  name='username' onblur="if(this.value=='')this.value='<?php echo $db_first_name; ?>';" onfocus="if(this.value=='<?php echo $db_first_name; ?>')this.value='';" value="<?php echo $db_first_name; ?>" class="register"/>
于 2012-08-13T19:13:58.837 回答