2012-09-17 98 views
0

我想知道在Spring Webflow环境中实现动态下拉菜单的最佳方式。Spring Webflow上的动态下拉菜单

我一直在过去的3个小时内使用Google,我对如何实现它有几点想法。我的问题涉及到了解清洁和最佳实践方面的最佳解决方案。

我正在考虑创建一个Spring MVC控制器,它接收一个带有我所需参数的AJAX请求并在响应中发送一个JSON列表。该请求将使用jQuery创建,因此响应也可以通过jQuery进行处理,从而创建更新所需的下拉菜单。

此外,无论解决方案,我想避免在jQuery处理程序中直接创建每个标记。不提供jQuery一种机制或实用程序,例如,通过接收数组来更新下拉菜单?

任何提示?

在此先感谢。

回答

0

我是这样做的。

> <form:form commandName="dateRange"> ... 
>     <select name="fyForDR" id="fyForDR" class='discretFont' style='margin-left:10px;margin-right:10px;'> 
>             <option value="" selected='selected'>Fiscal Year</option> 
>             <option value="2011" <c:if test="${fyForDR == '2011'}">selected="selected"</c:if> >FY11</option> 
>             <option value="2010" <c:if test="${fyForDR == '2010'}">selected="selected"</c:if> >FY10</option> 
>             <option value="2009" <c:if test="${fyForDR == '2009'}">selected="selected"</c:if> >FY09</option> 
>             <option value="2008" <c:if test="${fyForDR == '2008'}">selected="selected"</c:if> >FY08</option> 
>             <option value="2007" <c:if test="${fyForDR == '2007'}">selected="selected"</c:if> >FY07</option> 
>             <option value="2006" <c:if test="${fyForDR == '2006'}">selected="selected"</c:if> >FY06</option> 
>         </select> 
>         <script type="text/javascript"> 
>             Spring.addDecoration(new Spring.AjaxEventDecoration({ 
>                 elementId: "fyForDR", 
>                 event: "onchange", 
>                 formId:"dateRange", 
>                 params: {fragments:"body", _eventId: "setFy"} 
>             })); 
>         </script> 

...

+0

techsjs2012谢谢您的回答。据我所知,你是通过触发事件“setFy”重新加载ID为“fyForDR”的下拉菜单,然后我想你的转换中有一些代码加载了值列表,我错了吗?我根本不理解的是,如果你已经在下拉菜单中有元素,你为什么这么做。使用您的解决方案,您每次触发“onchange”事件时都会丢失原始内容,不是吗?你能解释一下你的解决方案的行为吗?提前致谢。 –

+0

我这样做后,用户点击其中一个选项我删除了一切,但这一个选项 – techsjs2012