这个与你struts_config.xml中path的配置和你程序的目录结构有关系
试试onchang="**.do"或者onchang="/subpath/**.do"
检查一下
试试onchang="**.do"或者onchang="/subpath/**.do"
检查一下
解决方案 »
- Struts2中表单中name的问题, name="user.name"
- 不是说javase是专做桌面软件的吗?还有javaee也可以做C/S的!倒底哪个好用啊?
- SSH中如何按照姓名去查找数据库,并显示到页面上来
- 关于抛出异常的问题
- Java下调用.C,哪位高手帮帮忙吧!~
- 在使用jms的时候,在空闲状态,如何判断服务器已经断开socket连接?
- SPRING环境中log4j的初始函数改放哪里,就是设置属性文件那个函数,因为在WEB情况下使用的,可以放SPRING的配置中,但是那样就会在SPRING
- openldap能否经得住3,4000人同时在线阿?
- 开发过亚信CMPP3.0移动网关的高手进~!高分!
- 请问:关于Digester在weblogic创建的问题 在线等 高分
- 问一个关于ibatis 的问题
- abbot谁懂?
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ page import="com.xzh.docsys.util.Constant" %>
<%
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
%><title>xxx系统</title>
<link href="<%= request.getContextPath()%>/style/style.css" rel="stylesheet" type="text/css" />
<h5> 流程模版名称:<bean:write name="strModName"/></h5>
<h5> 流程模版类型:<logic:equal name="strModSort" value="<%=Constant.SORT_SIGN.toString()%>">联合签批流程模版</logic:equal>
<logic:equal name="strModSort" value="<%=Constant.SORT_STAMP.toString()%>">联合盖章流程模版</logic:equal>
</h5>
<html:form action="/flowTemplate/createFlowPlate.do">
<logic:present name="flowPlateForm" property="strModId">
<input type="hidden" name="strModId" value='<bean:write name="flowPlateForm" property="strModId"/>'>
</logic:present>
<table width="41%" border="0" align="center">
<tr>
<td colspan="2">部门选择:<select name="dep_id" style="width:300;" id="department_id" onchange="refreshUserList();">
<option value="-1">---请您选择需要添加人员所在的部门---</option>
<logic:iterate name="departments" id="dep">
<option value='<bean:write name="dep" property="orgId"/>'><bean:write name="dep" property="orgName"/></option>
</logic:iterate>
</select>
</td>
</tr>
<tr>
<td width="47%" height="33">待选人员</td>
<td width="53%">已选人员</td>
</tr>
<tr>
<td height="152"><select name="userNoChoose" style="width:300;" id="auser" size="10" ondblclick="addUser()"></select>
</td>
<td><select name="userChoose" style="width:200;" id="chooseuser" size="10" ondblclick="delUser()" multiple></select>
</td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
</table>
</html:form><script language="JavaScript">
function getSelectIndex(elementId) {
var s = document.getElementById(elementId);
var ix = 0;
for (var i = 0; i < s.length; i++) {
if (s.options[i].selected) {
ix = i;
}
}
return ix;
}
function addUser(){
var userNoChoose = document.getElementById("userNoChoose");
var userChoose = document.getElementById("userChoose");
if(userNoChoose.length>0)
{
var ix = getSelectIndex("userNoChoose");
var value = userNoChoose.options[ix].value;
var text = userNoChoose.options[ix].text;
userNoChoose.options.remove(ix);
userChoose.add(Option(text,value));
}
}function delUser(){
var userNoChoose = document.getElementById("userNoChoose");
var userChoose = document.getElementById("userChoose");
if(userChoose.length>0)
{
var ix = getSelectIndex("userChoose");
var value = userChoose.options[ix].value;
var text = userChoose.options[ix].text;
userChoose.options.remove(ix);
userNoChoose.add(Option(text,value));
}
}
function sub()
{
var userChoose = document.getElementById("chooseuser");
if(userChoose.length<1)
{
alert("请选择用户");
return false;
}
for(var i=0;i<userChoose.length;i++){
userChoose.options[i].selected=true;
userChoose.options[i].value;
}
document.forms[0].submit();
}
var xmlHttp;
function createXMLHttp(){
if(window.ActiveXObject){
try{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
xmlHttp = false();
}
}
}else if(window.XLMHttpRequest){
xmlHttp = new XMLHttpRequest();
}
} function refreshUserList(){
var dep_id = document.getElementById("department_id").value;
if(dep_id=="" || dep_id=="-1"){
clearUserList();
return;
}
//RefreshUserList为servlet
var url = "RefreshUserList?" + createQueryString(dep_id) + "&ts=" + new Date().getTime();
createXMLHttp();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET" , url , true);
xmlHttp.send(null);
}
function createQueryString(dep_id){
var queryString = "dep_id=" + dep_id ;
return queryString;
}
function handleStateChange(){
if(xmlHttp.readyState == 4){
updateUserList();
}
} function updateUserList(){
clearUserList();
var user = document.getElementById("auser");
var results = xmlHttp.responseXML.getElementsByTagName("user");
var idvalues = xmlHttp.responseXML.getElementsByTagName("value");
var option = null;
for(var i = 0 ; i < results.length; i++){
option = document.createElement("option");
option.value = idvalues[i].firstChild.nodeValue;
option.appendChild(document.createTextNode(results[i].firstChild.nodeValue));
user.appendChild(option);
}
}
function clearUserList(){
var users = document.getElementById("auser");
while(users.childNodes.length > 0){
users.removeChild(users.childNodes[0]);
}
}
</script>
servlet片段代码
response.setContentType("text/html;charset=UTF-8");
StringBuffer results = new StringBuffer("<users>");
//根据传入的部门id查找部门下的人员,然后将他们添加进results中
for(...){
results.append("<user>");
results.append("用户名称:" + user1.getUserRealName());
results.append("</user>");
results.append("<value>");
results.append(user1.getUserId());
results.append("</value>");
}
results.append("</users>");
response.setContentType("text/xml");
response.getWriter().write(results.toString());