0

使用 Spring Webflow 和 Dijit 看起来我只能为每个元素(字段)添加一个装饰?

我正在开发一个 Spring Webflow 项目,一旦用户从下拉列表中选择一个自治市镇,我就会加载一个学校列表。在我向其中添加 dijit.form.Select 小部件类型之前,该表单运行良好。请看下面的代码。

我可以同时使用吗?

我遇到的问题是在 Spring MVC 方面,bean 现在在 borough 字段中具有值“borough”,而不是用户输入的值!

<form:select path="borough" id="borough" >
<form:option value="UNKNOWN" label="Unknown" />
<form:option value="X" label="Bronx" />
<form:option value="K" label="Brooklyn" />
<form:option value="M" label="Manhattan" />
<form:option value="Q" label="Queens" />
<form:option value="R" label="Staten Island" />
<form:option value="O" label="All Other Schools" />
</form:select>
<script type="text/javascript">
            Spring.addDecoration(new Spring.ElementDecoration({
            elementId : "borough",
            widgetType : "dijit.form.Select",
            widgetAttrs : {
                                promptMessage : "Enter Borough",
                                required : true }}));

            Spring.addDecoration(new Spring.AjaxEventDecoration({
            elementId: "borough",
            event: "onChange",
            formId:"member",
            params: {fragments:"body", _eventId: "loadSchools"}}));
</script> 
4

1 回答 1

0

我解决了这个问题。我删除了Spring.AjaxEventDecoration调用并将Spring.ElementDecoration更改为以下内容:

 <script type="text/javascript">
                            Spring.addDecoration(new Spring.ElementDecoration({
                                elementId : "sex",
                                widgetType : "dijit.form.Select",
                                widgetAttrs : {
                                promptMessage : "Enter Sex",
                                required : true, 
                                onChange : function() {
                                    Spring.remoting.submitForm(
                                        'submit', 
                                        'customer', 
                                        {_eventId: 'sexchange', fragments:'contents'}
                                     ); 
                                     return false;
                                } }}));


                        </script>

我不是 100% 清楚为什么 Ajax 调用不起作用,但我的项目现在正在使用此代码!

于 2012-10-12T16:40:46.200 回答