我正在尝试使用Struts2-jQuery-grid-3.7.0插件在网格列中填充下拉列表,如下所示.
<s:url id="dataURL" action="CategoryList" namespace="/admin_side"/>
<sjg:gridColumn name="subCategory.category.catName"
index="subCategory.category.catName"
edittype="select"
searchtype="select"
formoptions="{label:'Select'}"
surl="%{dataURL}"
editoptions="{dataUrl : '%{dataURL}'}"
editrules="{required: true}"
title="Category" width="200"
sortable="true" search="true"
editable="true" sorttype="text"/>
Run Code Online (Sandbox Code Playgroud)
并且动作CategoryList映射的动作如下.
@Namespace("/admin_side")
@ResultPath("/WEB-INF/content")
@ParentPackage(value="struts-default")
public final class CategoryList extends ActionSupport implements Serializable {
@Autowired
private final transient Service service = null;
private List<Category>categories = new ArrayList<Category>();
private static final long serialVersionUID = 1L;
public List<Category> getCategories() {
return categories;
}
@Action(value = "CategoryList",
results = {
@Result(name = ActionSupport.SUCCESS, location = "Product.jsp"),
@Result(name …Run Code Online (Sandbox Code Playgroud) jsp struts2 struts2-jquery struts2-jquery-grid struts2-jquery-plugin
我正在使用struts2 jquery插件的datepicker如下所示
<sj:datepicker id="frdate" name="training.fromDate"
label="From Date (dd-mm-yyyy)" maxDate="0" />
Run Code Online (Sandbox Code Playgroud)
我想把它隐藏在某些条件上.我写了一个像这样的jquery.
$("#frdate").hide(); //this will hide textbox of datepicker
$("label[for='frdate']").hide(); // this will hide label of datepicker
Run Code Online (Sandbox Code Playgroud)
但是datepicker按钮仍然显示?如何使用jquery隐藏它?
The generated html code is:
<tr>
<td class="tdLabel">
<label for="frdate" class="label">From Date (dd-mm-yyyy):</label></td>
<td><input type="text" name="training.fromDate" value="" id="frdate"/></td>
</tr>
<script type='text/javascript'>
jQuery(document).ready(function () {
jQuery.struts2_jquery_ui.initDatepicker(false);
});
jQuery(document).ready(function () {
var options_frdate = {};
options_frdate.showOn = "both";
options_frdate.buttonImage = "/ONLINE/struts/js/calendar.gif";
options_frdate.maxDate = "0";
options_frdate.jqueryaction = "datepicker";
options_frdate.id = "frdate";
options_frdate.name = "training.fromDate";
jQuery.struts2_jquery_ui.bind(jQuery('#frdate'),options_frdate);
}); …Run Code Online (Sandbox Code Playgroud) jquery struts2 jquery-ui-datepicker struts2-jquery struts2-jquery-plugin
该问题与Struts v2.3.16和Struts2 jQuery插件v3.6.1有关.看起来像Struts项目不支持像Struts2 jQuery插件这样的第三方插件.如何修复上述版本的不兼容性?这是启动时抛出的异常
13:33:33 ERROR (org.apache.struts2.dispatcher.Dispatcher:38) - Dispatcher initialization failed
Unable to load configuration. - bean - jar:file:/D:/Workspaces/tests/jspbean/out/artifacts/exploded/WEB-INF/lib/struts2-jquery-plugin-3.6.1.jar!/struts-plugin.xml:27:125
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:445)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:489)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:74)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:57)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4656)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5312)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
at org.apache.catalina.startup.HostConfig.manageApp(HostConfig.java:1553)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:301)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(Unknown Source)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(Unknown Source)
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:622)
at org.apache.catalina.mbeans.MBeanFactory.createStandardContext(MBeanFactory.java:569)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) …Run Code Online (Sandbox Code Playgroud)