如何以编程方式提交SmartClient DynamicForm?

时间:2013-04-01 09:38:10

标签: smartclient

我正在尝试使用一些数据创建一个隐藏的表单,需要将其提交到一个jsp页面(在新窗口中打开),但所有这些都会以编程方式发生,而无需用户按下提交按钮。

我的示例代码

var fsquery = "abcd";
var emailId = "as@gmail.com";
var portalPsswd = "password";
var projectId = "123";
var kbUrl = "some url which will consume form post parameters";
var pv="1.2",pn="ADA";

this.kbform=isc.DynamicForm.create({
width: 300,
fields: [
{type: "hiddenitem", name: "EMAIL_ID", defaultValue:emailId },
{type: "hiddenitem", name: "PORTAL_PASSWORD", defaultValue:portalPsswd},
{type: "hiddenitem", name: "PROJECT_ID", defaultValue:projectId},
{type: "hiddenitem", name: "FSQUERY", defaultValue:fsquery},
{type: "hiddenitem", name: "PRODUCT_VERSION", defaultValue:pv},
{type: "hiddenitem", name: "PRODUCT_NAME", defaultValue:pn},
{type: "hiddenitem", name: "ORIGIN", defaultValue:"Administrator"},
{type: "submit", name: "submit", defaultValue: "submit"}
],
action: kbUrl,
target: "_blank",
method: "POST",
canSubmit: true
});

this.kbform.submit();

最后一个语句不会自动提交表单,但是如果我单击提供的提交按钮,它将根据需要完美地运行。

请为我提供一个解决方案,帮助我模拟“提交”类型按钮功能以提交表单。

您可以在“text.js”标签下试用此示例代码here

1 个答案:

答案 0 :(得分:0)

我对此不确定,但您是否尝试在window.onload事件中触发提交?在文档完全加载之前,我认为表单不可用。对不起,我没有任何例子。