2015-12-30 132 views
0

我正在开发一个MVC5 Web应用程序,我有一个简单的注册表单,其中包含电子邮件,邮政编码和密码。但是,当我注册的铬记得邮编和密码,而不是电子邮件和密码;下次当我尝试输入电子邮件时,邮政编码会显示为建议。Chrome记住邮编而不是电子邮件/用户名

我对形式的标记是根据:

我已经编辑了问题并粘贴整个表单。好心建议我除了移动电子邮件和密码之外还应该做些什么。

<div class="wrapper"> 

<div class="closeBetaWrapp"> 
    <div class="simplePopup">    

     <div class="loginWrapp signupWrapp"> 
      <div class="iconCont"><img src="images/orchaIcon.png" alt="Orcha"></div> 

      <form action=""> 
       <div class="formrow "> 

        <div class="leftCol"> 
         <label for="Email">Email</label> 
         <input class="formField" type="email" name="Email" id="Email" placeholder="Enter your email address here" /> 
        </div> 

        <div class="leftCol"> 
         <label for="Pcode">Postcode</label> 
         <input class="formField" type="tel" name="Pcode" id="Pcode" placeholder="Enter postcode here" /> 
        </div> 

        <div class="leftCol"> 
         <label>Year of Birth</label> 
         <select id="" class="dropdown"> 
          <option>Choose your year of birth</option> 
          <option>1980</option> 
          <option>1981</option> 
          <option>1982</option> 
          <option>1983</option> 
          <option>1984</option> 
          <option>1985</option> 
          <option>1986</option> 
          <option>1987</option> 
          <option>1988</option> 
          <option>1989</option> 
          <option>1990</option> 
          <option>1991</option> 
          <option>1992</option> 
          <option>1993</option> 
          <option>1994</option> 
          <option>1995</option> 
         </select> 
        </div> 

        <div class="leftCol"> 
         <label>Gender</label> 
         <select id="" class="dropdown"> 
          <option>Choose your year of birth</option> 
          <option>Female</option> 
          <option>Male</option> 
         </select> 
        </div> 

        <div class="leftCol"> 
         <label for="Password">Password</label> 
         <input class="formField" type="password" name="Password" id="Password" placeholder="Enter your password here" /> 
        </div> 

        <div class="rightCol"> 
         <label for="CPassword">Confirm Password</label> 
         <input class="formField" type="password" name="CPassword" id="CPassword" placeholder="Enter password again" /> 
        </div> 

       </div><!-- formrow --> 
       <div class="formrow"> 
        <div class="rightCol btnCol"> 
         <input class="moreBtn" type="submit" value="Signup" /> 
         <input class="moreBtn cnclBtn" type="reset" value="Cancel" /> 
        </div> 

       </div><!-- formrow --> 
      </form> 
     </div> 



    </div> 
</div><!-- closeBetaWrapp --> 
+0

您可以发表完整的表格代码吗?从'

'到'
'。还有你的密码字段,提交按钮?我尝试添加一个表单元素和一个提交按钮。它工作得很好。 –

+0

我编辑了这个问题,整个表格现在被粘贴 –

回答

1

浏览器通过form.elements [n] .type ==“password”检测密码并遍历所有文档。然后,它通过在密码字段之前立即向文本字段的表单元素向后搜索来检测用户名字段。

因此,就你的情况而言,它认为你的邮编是你的用户名字段,并记住这一点。

因此,解决方案是将邮政编码字段移到电子邮件字段上方。

即使在移动之后,它也不起作用,请在Chrome设置中从“保存的密码”中删除以前保存的邮编密码值。也可以使用向下箭头键选择建议并按shift + delete删除以前保存的任何值。

我得到了浏览器如何检测用户名,密码字段here & here

+0

我不能这样做,因为设计是这样的,密码是最后一个字段,电子邮件是第一个,之间有几个下拉.. –

+0

然后我认为没有办法,因为这是浏览器检测用户名 - 密码组合的方式。通过将电子邮件字段类型更改为'type =“username”'来试试你的运气。如果幸运的话,Chrome可能会将其作为用户名检测到。否则你运气不好。 –

+0

谢谢,,,我会检查它...我希望它的工作.. –

0

可以使用autocomplete属性告诉哪些字段包含浏览器的信息。例如:

<input class="formField" autocomplete="postal-code" type="text" name="PostCode" id="PostCode" placeholder="Enter your postcode here" /> 

请参阅https://html.spec.whatwg.org/multipage/forms.html#autofill了解更多信息。

相关问题