触发自动完成而无需提交表单(Trigger autocomplete without submitt

2019-07-21 20:07发布

我写这封信有三个文本输入一个非常简单的Web应用程序。 输入被用来生成一个结果,但所有的工作都在Javascript中完成的,所以没有必要提交表单。 我试图找到一种方式来获得用于自动完成存储输入值,因为它会如果他们在已提交表单中的浏览器。

我试图让输入自动完成=“的”手动,但没有一个表单提交,浏览器无法知道何时应该存储值的方式,所以这没有任何影响。

我也曾尝试包裹在具有的onsubmit =表单输入“返回false;”,但防止形式从实际提交的似乎也防止浏览器存储其输入的价值观。

当然,也可以手动使用localStorage的或cookie来持续投入,然后从那些生成自动完成的提示,但我希望能找到那个水龙头到本地浏览器的行为,而不是手工复制它的解决方案。

Answer 1:

测试了Chrome浏览器,IE和Firefox:

<iframe id="remember" name="remember" class="hidden" src="/content/blank"></iframe>

<form target="remember" method="post" action="/content/blank">
  <fieldset>
    <label for="username">Username</label>
    <input type="text" name="username" id="username" value="">
    <label for="password">Password</label>
    <input type="password" name="password" id="password" value="">
  </fieldset>
  <button type="submit" class="hidden"></button>
</form>

在JavaScript触发提交,如 $("form").submit(); $("#submit_button").click()从评论更新)

您需要在返回/内容的空白页/空白GET和职位(约:空白并没有为我,但情况因人而异工作)。



Answer 2:

我们知道,浏览器会保存其信息只在表单提交 ,这意味着我们无法取消它return falsee.preventDefault()

我们所能做的就是让它的数据提交给无处没有重新加载页面。 我们可以做到这一点的iframe

<iframe name="