首先,我使用spring webflow和一些spring javascript来简化ajax调用。
截至目前,我正在让ajax调用webflow以显示适当的片段。
所以我尝试使用Spring.AjaxEventDecoration来满足我的应用程序的ajax需求。但是,我在使用此方法和webflow时遇到了一些麻烦,据我所知,几乎没有可用的示例。
附带说明,我没有使用表格或选择框。我想我会提到这一点,因为我发现的每个示例都使用带有onlick事件的表单/表单提交或带有onchange事件的选择框。
主要问题 :如果我的Webflow中有一个方法具有来自我的Ajax的参数,我是否可以实际将参数从Ajax传递给Webflow?
码:
<transition on="disassociateProperty" > <evaluate expression="dService.disassociateProperty(requestParameters.currentPId ,currentD)" result="flowScope.currentD" /> <render fragments="PList" /> </transition>
因此,当我查看firebug中的ajax调用时,它具有我要传入的参数(currentPId)和正确的eventId。
我将调试点放在disassociateProperty方法的第一行,它告诉我currentPId为null。
因此,我假设Webflow中的requestParameters.currentPId不会从ajax调用中提取currentPId。
这是预期的吗?谁能解释并举一个例子?
我将不胜感激。
亚当
如果您认为问题来自ajax调用,那么在此处编写ajax调用会很有帮助,因此我们可以检查调用是否正确完成。
您可以在进行ajax调用时尝试传递在data参数中 序列化 的 表格 。另外,不要忘记在URL中添加 ajaxSource 参数。希望能有所帮助。
HTML示例:
<form id="formId" method="post" action="${flowExecutionUrl}&_eventId=disassociateProperty"> <input type="text" id="currentPId" /> </form>
jQuery示例:
$.ajax({ type: "POST", data: $("#formId").serialize(), url: $("#formId").attr("action") + "&ajaxSource=true", ... });