2010-08-30 74 views
1

我想让浏览器的密码管理器记住用gwt生成的ajax表单的输入。通过单击一个gwt按钮来伪造一个表单

我的想法是在页面上使用隐藏的标准静态html表单,并让浏览器使用该表单。但是,现在我必须通过单击我的自定义gwt登录按钮来使表单提交数据。

我可以使用getElementById()或类似的方法获取表单元素,但是我可以以某种方式提交该表单,以便浏览器要求保存用户数据?

回答

1

jQuery的可以:

$("#formID").submit() 

UPD。原始JavaScript:

document.forms["formID"].submit(); 
+2

追加'$ wnd.'到最后一行的开头,从[JSNI](http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsJSNI.html)方法调用它,它有一个工作机会;)我记得GWT的Google小组关于将浏览器的密码管理器和GWT结合起来的一些线索 - 这可能值得一看/搜索。像往常一样,IE浏览器遇到了一些麻烦;) – 2010-08-30 22:32:59

+1

Thx。它的工作方式,虽然我发现更好看的解决方案,而无需本地方法: FormPanel.wrap(DOM.getElementById(“hiddenLoginForm”))submit(); – igorbel 2010-08-31 12:19:01

2

我认为FormPanel是你在找什么。

+0

FormPanel的问题在于它也需要在我的gwt模块中,因此在初始页面加载时浏览器不可见,并且无法填充。所以,我使用的是在页面的gwt部分生成之前的标准表单。我以后可以轻松地将这些信息挖掘出来并放到我的实际gwt表单中。 – igorbel 2010-08-31 08:52:40

+2

@igorbel:你尝试过'FormPanel.wrap(Element element)'吗?来自javadoc:“创建一个包装现有的

元素的FormPanel,该元素必须已经附加到文档中。” – 2010-08-31 10:15:20

+0

是的。我最终使用该解决方案来避免本地方法,尽管最终效果是相同的。 Thx为输入 – igorbel 2010-08-31 12:14:35