Internet explorer 影响浏览器是否提示保存凭据

Internet explorer 影响浏览器是否提示保存凭据,internet-explorer,forms,markup,credentials,Internet Explorer,Forms,Markup,Credentials,对于大多数具有用户名和密码对话框的网页,浏览器将提示用户是否要保存该表单的凭据: 然而,事实并非如此。我找不到任何关于IE如何决定是否显示此对话框的好数据如何让IE显示提示-假设没有用户设置胜过它?我的猜测是,由于页面处于HTTPS模式,IE不允许执行autocomplete,因为页面指示不允许HTTP缓存 或者表单正在使用Javascript提交 有关更多详细信息,请参阅本文 当IE配置为向您提问时,它将根据您提交表单的方式提问或不提问 使用输入type=“submit”(即提交按钮)提交时

对于大多数具有用户名和密码对话框的网页,浏览器将提示用户是否要保存该表单的凭据:


然而,事实并非如此。我找不到任何关于IE如何决定是否显示此对话框的好数据如何让IE显示提示-假设没有用户设置胜过它?

我的猜测是,由于页面处于HTTPS模式,IE不允许执行autocomplete,因为页面指示不允许HTTP缓存

或者表单正在使用Javascript提交


有关更多详细信息,请参阅本文

当IE配置为向您提问时,它将根据您提交表单的方式提问或不提问

使用
输入type=“submit”
(即提交按钮)提交时,IE将询问您是否要保存密码

如果您使用javascript提交表单,如下面的
document.getElementById('Form1').submit()
,它将不会要求您保存密码

在IE中试试这个HTML(我还没有测试其他浏览器):

  • “提交”按钮要求您保存密码
  • 提交链接没有要求任何东西
Html代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head id="Head1">
    <title>Home Page </title>
    <link href="Styles/Site.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <form method="post" action="Default.aspx" id="Form1">
    <div class="aspNetHidden">
        <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJODcyMTYwNTY0ZGRfKmsji5yH9OZWyNlRsIwCOz1mu6uALjmUI+04ei8bkQ==" />
    </div>
    User:
    <input name="ctl00$BodyContent$login$UserName" type="text" id="ctl00_BodyContent_login_UserName"
        class="user-name">
    Pass:
    <input name="ctl00$BodyContent$login$Password" type="password" id="ctl00_BodyContent_login_Password">
    <input type="submit" value="Submit">
    <a href="javascript:document.getElementById('Form1').submit();">submit</a>
    </form>
</body>
</html>

主页
用户:
通过:
如果您选中此框以不再询问,则可以在IE选项中配置:


工具>互联网选项>内容>自动完成

这真的很奇怪-这不是表单的结构,也不是字段名。如果我将表单复制并粘贴到JSFIDLE中,就会得到提示。如果我在原始页面中编辑提交按钮,我不会。我认为罪魁祸首要么是1。)doctype 2。)一些与sharepoint相关的怪异疯狂IE行为3。)一些Javascript搞乱了表单。。。这可能是一个选项,除去基本表单骨架之外的所有内容,然后一步一步地添加内容,直到不再出现提示。而我当时正期待着回答这个问题,结果却被我的博客打败了-第一个是关于IE(IE就是IE),第二个是关于https。谢谢你的回答和链接。