0
我使用Spring 3.0.5,Webflow 2.3.0和Spring JS进行装饰。Spring的ElementDecoration和AjaxEventDecoration与Dijit不兼容?
我的一个形式具有下面的代码:
<form:select path="selection">
<form:option value="" label="Please select"></form:option>
<form:options></form:options>
</form:select>
<noscript>
<button id="btnSelect" type="submit" name="_eventId_dropDownSelectionChange">Select</button>
</noscript>
<script type="text/javascript">
Spring.addDecoration(new Spring.ElementDecoration({
widgetType : "dijit.form.Select",
widgetAttrs : {
forceWidth : true,
missingMessage : "<s:message code="NotEmpty" />",
}
}));
Spring.addDecoration(new Spring.AjaxEventDecoration({
elementId : "selection",
formId : "templateModel",
event : "onChange",
params : { _eventId: "dropDownSelectionChange" }
}));
</script>
的目的是使这取决于在下拉列表中选择的形式的第二部分。这可以通过下拉列表的onChange上的AJAX调用来实现,也可以在无脚本的情况下按下'Select'按钮来实现。
事情的无脚本方面的作品。我在下拉列表中选择一些内容,然后按'选择',表格的其余部分将刷新。
但是,AJAX调用在其请求中没有刚刚选择的值。就好像AJAX调用发生在Dijit组件更新其表示之前。这些组件是否以我使用它们的方式兼容?
我可以得到它,如果工作:
- 我不跟一个onclick AJAX装修装饰组件作为组件的Dijit,而是只是正常的下拉列表。
- 我把AJAX调用上的按钮,而不是建立在dijit的onChange