2015-05-20 58 views
1

我有这个问题,我无法清除登录页面的文本框。当用户成功登录后立即返回到登录页面时,他仍然会在文本框中看到他的用户名和密码。成功登录后清除文本框

我已经使用这个代码来解决问题

body onload="document.getElementById('name').value='';document.getElementById('pass').value=''" 

但是这个代码不立即清除文本框中的问题试过。在它工作之前,我需要刷新页面几次。是否有解决问题的替代方法?

这里是我的代码

<?php 
    /**** Start Session ****/ 
    session_start(); 
    /**** Deletes the data stored in the session ****/ 
    unset($_SESSION['SESS_USER_NAME']); 
    unset($_SESSION['REF_ID']); 
    unset($_SESSION['REF_FNAME']); 
    unset($_SESSION['REF_LNAME']); 
    unset($_SESSION['REF_ACCOUNT']); 
    unset($_SESSION['COUNT']); 

?> 

<!DOCTYPE html> 
<html class="no-js" lang="en"> 

<head> 

</head> 

<body onload="document.getElementById('name').value='';document.getElementById('pass').value=''"> 

      <form action="admin-exec.php" method="post" > 
       <center><?php include('../function/admin_errmsg.php'); ?></center> 
       <br> 
       <input type="text" name="txt_username" placeholder="Username" id="name"> 
      <br> 
      <input type="password" name="txt_password" placeholder="Password" id="pass"> 
      <br> 
      <img id="captcha" class="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" /> 
      <input type="text" name="captcha_code" size="10" maxlength="6" placeholder="Input Captcha Code Here" /> 
      <a href="#" onclick="document.getElementById('captcha').src = '/securimage/securimage_show.php?' + Math.random(); return false"> 
      <br />[ Different Image ]</a> 
      <br> 
      <br> 
       <input type="submit" value="Let Me In" class="btn" > 
      </form> 

</body> 
</html> 
+1

这不是浏览器执行自动完成的框?这是浏览器的一个功能,作为用户的便利 - 如果用户想要发生这种情况,您不应该试图覆盖它 - 这取决于他们关闭它。 –

回答

0

使用下面的代码为您的HTML部分

<!DOCTYPE html> 
<html class="no-js" lang="en"> 

<head> 
<script> 
function clearAll() 
{ 
document.getElementById('name').value=''; 
document.getElementById('pass').value=''; 
} 
</script> 
</head> 

<body onload="clearAll()"> 

      <form action="admin-exec.php" method="post" > 
       <center><?php include('../function/admin_errmsg.php'); ?></center> 
       <br> 
       <input type="text" name="txt_username" placeholder="Username" id="name"> 
      <br> 
      <input type="password" name="txt_password" placeholder="Password" id="pass"> 
      <br> 
      <img id="captcha" class="captcha" src="/securimage/securimage_show.php" alt="CAPTCHA Image" /> 
      <input type="text" name="captcha_code" size="10" maxlength="6" placeholder="Input Captcha Code Here" /> 
      <a href="#" onclick="document.getElementById('captcha').src = '/securimage/securimage_show.php?' + Math.random(); return false"> 
      <br />[ Different Image ]</a> 
      <br> 
      <br> 
       <input type="submit" value="Let Me In" class="btn" > 
      </form> 

</body> 
</html> 
+0

是什么让你觉得这与根据OP的代码没有函数调用直接在'onload'属性中执行它有什么不同? –

0

你可以这样

$(document).ready(function(){ 

     $("#name").val(""); 

) 
1

添加和JavaScript我怀疑这是浏览器自动填充字段,因为代码中没有任何内容来填充输入的值。

从用户体验的角度来看,虽然我希望它能够在登录后重定向到另一页,或者如果它是头中的登录表单,我希望它不再显示。