我是Struts 2的新手,想在我的Struts应用程序中添加一些jQuery,但是我遇到了一些问题,我做了很多但却一无所获。
我想实现Struts jQuery select标签但有一些问题。这是我的代码
struts.xml中
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="false" />
<package extends="struts-default,json-default" name="default" namespace="/">
<action class="org.actions.JsonS" name="jsondata" >
<result type="json" />
</action>
</package>
</struts>
的welcome.jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<s:url var="remoteurl" action="jsondata.action" />
<sj:select href="%{remoteurl}" id="mylist" list="nolist" name="mylist" />
</body>
</html>
JsonS.java
package org.actions;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
public class JsonS {
private List<String> nolist;
public String execute() {
nolist = new ArrayList<String>();
nolist.add("one");
return ActionSupport.SUCCESS;
}
public String getJSON() {
return execute();
}
public List<String> getNolist() {
return nolist;
}
}
当我手动检查json响应一切正常时。我收到了这个回复。
{"JSON":"success","nolist":["one"]}
但是当我想将它与struts jQuery一起使用时,选择它并不会发生任何事情。
答案 0 :(得分:0)
从
更改网址和标题<head>
</head>
<s:url var="remoteurl" action="jsondata.action" />
到
<head>
<sj:head/>
</head>
<s:url var="remoteurl" namespace="/" action="jsondata" />
对于此以及进一步的参考,要确保您在战争版本中包含struts2-jquery plugin。