【发布时间】:2015-12-30 13:14:21
【问题描述】:
如何在 ATG 中进行 AJAX 调用或提交表单。这是我正在使用的代码:
document.getElementById("myP").style.visibility = "hidden";
这在 ATG 的意义上会起作用吗?
【问题讨论】:
-
使用 javascript 更改元素的可见性与在 ATG 中进行 AJAX 提交绝对没有关系。你具体想做什么?
如何在 ATG 中进行 AJAX 调用或提交表单。这是我正在使用的代码:
document.getElementById("myP").style.visibility = "hidden";
这在 ATG 的意义上会起作用吗?
【问题讨论】:
对于 ajax 调用,在 spring 和标准 J2EE 等应用程序中,您可以使用 AJAX 对表单的操作 URL 执行 GET 或 POST 调用。
在 ATG 中,您没有操作 URL。相反,你有 bean 引用,有点像
<dsp:form id="myForm">
<dsp:input type="myField1" bean="ABCFormHandler.myField1" />
<dsp:input type="myField2" bean="ABCFormHandler.myField2" />
<dsp:input type="submit" bean="ABCFormHandler.myProcess" style="display:none"/>
<dsp:input type="button" id="formSubmitter" value="Submit"/>
</dsp:form>
这里,我们在 ABCFormHandler 中定义了一个名为 handleMyProcess 的方法,其中还包含属性 myField1 和 myField2强>.
请注意,表单标签的 id 为“myForm”。
接下来,有两个字段,即。 “myField1”和“myField2”。
有一个隐藏的提交按钮,通过将样式设置为“display:none”
最后,我们有一个普通按钮,我们只需为其设置一个名为“formSubmitter”的 id。
现在,我们将使用这个普通按钮提交 id 为“myForm”的表单。
我们只需要使用 jQuery 调用表单的 submit() 方法,可以简单地做到:
$('#formSubmitter').on('click', function(){
$form = $('#myForm');
$form.submit();
});
希望这会有所帮助!
【讨论】: