清除HTML登录表单,其中的用户名文本字段填充了Cookie

问题描述

早上好, 我正在为大学做一个基本的网站。 我应该提供一个登录表单,用户可以在其中输入用户名和密码...如果正确,则会使用用户名值保存Cookie;多亏了这个cookie,当用户关闭会话并再次打开浏览器进行登录时,用户名字段已经存在(我使用表单内的php脚本来完成此操作)。 唯一的问题是,应清除表单中两个文本字段的按钮不起作用。

 <form name="f" action="controlAndErrorLogin.php" method="POST">
        <p>Username: <input type="text" name="username" value=<?php if(isset($_COOKIE["username"])){echo "\"".$_COOKIE["username"]."\"";}else{echo "\"\"";}?>>
            </p>
        <p>Password: <input type="password" name="password" value=""></p>
        <p>
            <input type="submit" value="OK">
            <input type="reset" value="PULISCI" onclick="document.getElementById('username').value = '';"> 
        </p>
    </form>

出什么问题了?

谢谢

解决方法

首先,您的输入字段缺少您尝试选择的id

第二,用reset按钮将表单字段重置为在初始HTML中指定的默认值。您在此处指定了用户名,而不是一个空值-因此这是该字段将重置为的名称。

第三,.value = ''仅重置元素的当前值,而不重置 default 值。您需要设置实际的defaultValue属性才能实现。

<form name="f" action="controlAndErrorLogin.php" method="POST">
  <p>Username: <input type="text" id="username" name="username" value="foo"></p>
  <p>Password: <input type="password" name="password" value=""></p>
  <p>
    <input type="submit" value="OK">
    <input type="reset" value="PULISCI" 
           onclick="document.getElementById('username').defaultValue = '';">
  </p>
</form>

,

尝试在输入标签中添加名称为“ username”的属性id =“ username”

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...