asp.net - 注册时Chrome保存的是电话号码而不是电子邮件

标签 asp.net asp.net-mvc google-chrome browser credentials

就我而言。我有用于注册的登录表单,该表单有一些字段,如电话号码、电子邮件地址、密码等。注册后,当用户想要登录时,要求是电子邮件地址和密码。 Chrome 自动填写字段密码字段没问题,但在电子邮件字段中自动粘贴电话号码。

我该如何配置?

当我注册该网站时,这些照片显示了 chrome 凭据。 enter image description here

最后一个是正确的,我想像最后一个一样保存。

表单标记,即表单电话和电子邮件输入代码

@Html.TextBoxFor(m => m.Email, new { @class = "SSTinputTextE input", placeholder = "E-POSTA ADRESİ" })
@Html.ValidationMessageFor(m => m.Email, "", new { @class = "text-danger", @style = "display:none" })

@Html.TextBoxFor(m => m.Phone, new { @class = "SSTinputTextE input txtNumeric", placeholder = "CEP TELEFONU", maxlength = "11" })
@Html.ValidationMessageFor(m => m.Phone, "", new { @class = "text-danger ", @style = "display:none" })

enter image description here

最佳答案

我在 .Net MVC 站点中遇到了完全相同的问题,并且标记非常相似。我还在 input 元素本身上使用 placeholder 属性,而不是在元素之前使用 label 元素,就像 op 一样。

我通过将 HTML 中的电话号码字段移到电子邮件字段之前(以及可视化的表单,如果重要的话)来解决该问题。

我没有深入研究它,无法明确地找出其确切原因,但我怀疑这是因为它在之后拾取了第一个输入字段任何带有“电子邮件”一词的内容。由于没有电话号码标签来中断此逻辑,因此电话号码字段位于下一个,因此它选择了该字段。我知道 Chrome 使用一些简单的正则表达式来获取这些自动保存字段,所以也许它不够聪明,无法意识到元素本身的占位符也可以计数? (同样,这只是对原因的猜测。但我上面的解决方法无论如何都有效。)

关于asp.net - 注册时Chrome保存的是电话号码而不是电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36998329/

相关文章:

c# - CS0122 : 'System.Configuration.StringUtil' is inaccessible due to its protection level

c# - 修剪字符串末尾的字符串

asp.net-mvc - 如何自定义简单的成员资格提供程序以使用我自己的数据库 ASP.NET mvc 4

html - 获取网址并保存 | Chrome 扩展程序

java - Chrome 错误 : You are using an unsupported command-line flag: --ignore-certifcate-errors. 稳定性和安全性将受到影响

c# - ASP.NET 计划删除临时文件

javascript - MVC 定时器 Action

c# - 当数据为 null 或为空时,在 @Html.DisplayFor 中插入不间断空格? ASP.Net MVC

css - 背景视频覆盖了 Chrome 中页面的其余部分

C#:SQL "Select Top.."查询不返回任何行?