ASP.NET登录表单,适用于浏览器的“记住密码”功能

时间:2012-12-13 04:37:11

标签: asp.net

我知道这已被问过好几次,但到目前为止我对答案都不满意。

根问题是浏览器检测“登录表单”以自动填充字段并决定是否应该要求用户保存信息的方式。如果您的表单只有基本登录字段,它可以正常工作。如果同一表单包含许多其他字段,则浏览器不会将其检测为登录表单。

我见过的解决方案是说在您的网页上使用单独的非ASPX表单。在我的例子中,我的所有输入字段都是相当复杂的ASPX控件的子类化版本,主要是为了获取自定义背景图像和处理器/水印文本以及这种性质的项目。因此,尝试创建非ASPX表单需要做更多工作,因为我无法在表单上使用这些控件。我必须用标准HTML复制它们。我能做到这一点,但不愿意。此外,只要我需要进行更改,它就会得到更多维护。

有更好的方法吗?这让我可以使用ASP.NET的所有优点。

我的页面有登录区域和注册区域(名称,电子邮件,DOB等)。这就是浏览器混淆的原因。

我似乎记得当我为移动浏览器编写一个网站时,有一些标记可以用来告诉浏览器“这是一个登录名字段,这是一个密码字段”。如果有类似的东西可用,那将是完美的。

也许我可以用iframe做点什么?就像ASPX页面中的ASPX页面一样?

1 个答案:

答案 0 :(得分:0)

尽管代码很复杂,但任何自定义ASP.NET用户控件最终都会将输出呈现为HTML ,并且每个浏览器只会说HTML

您正在寻找的是如何编写ASP.NET代码,从而产生包含简单属性的HTML标记。

<input type="password" autocomplet="off" ...

这样所有浏览器都能识别出包含密码字段的表单。它并不关心你在后面的代码中做了什么。专注于输出。