一般来说对于普通的jsp页面我们可以这样写
<table>
<tr><td><input type=text name=add id=add value=1></td></tr>
<tr><td><input type=text name=add id=add value=2></td></tr>
</table>
但是到了strust页面中为什么不能这样定义呢?而且这样一定义他就说有问题
<table>
<tr><td><html:text property="userName" size="16" maxlength="16"/>td></tr>
<tr><td><html:text property="userName" size="16" maxlength="16"/></td></tr>
</table>
他在本地的页面提示说javascript有问题使用动态的DynaActionForm
<form-beans>
<form-bean name="HelloForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="userName" initial="" type="java.lang.String"/>
</form-bean>
</form-beans>
谢谢... ...
<table>
<tr><td><input type=text name=add id=add value=1></td></tr>
<tr><td><input type=text name=add id=add value=2></td></tr>
</table>
但是到了strust页面中为什么不能这样定义呢?而且这样一定义他就说有问题
<table>
<tr><td><html:text property="userName" size="16" maxlength="16"/>td></tr>
<tr><td><html:text property="userName" size="16" maxlength="16"/></td></tr>
</table>
他在本地的页面提示说javascript有问题使用动态的DynaActionForm
<form-beans>
<form-bean name="HelloForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="userName" initial="" type="java.lang.String"/>
</form-bean>
</form-beans>
谢谢... ...
解决方案 »
- 自定义标签taglib问题?
- 请问大家Overloaded的方法是可以改变返回值的类型?,Overlride的方法是可以改变返回值的类型?
- 请教:Exception in thread "main" java.lang.NullPointerException
- struts连接jsp问题,数据控制,请高手帮忙阿!!!!!!!!!!!!!!
- ★☆JSTL中文问题☆★
- 我想下载一个能安装到UNIX上的JDK,给我一个地址吧!谢谢
- 请教 使用JBuilder9开发时CSS的存放位置??
- 请问如何把字符型转化成数值型呀
- 获得以下内容的方法?谢谢 !
- springboot 外置tomcat 读取不到log4j2配置文件
- JSP和sql server连接的问题
- JSP上传文件并同时提交字段,字段里的中文特殊情况下出现奇怪问题,变成?,难,是否有朋友可以指点
不知道是不是跟最后一个td少了一个<有关系
如果是提示JS错误,那跟Struts定义数组无关。
给你我程序的一部分,你参考一下:=======form:public class UserKengenEntryForm extends ActionForm { private String id; private String user_id; private String user_name; private String moduleId[]={};
public String[] getModuleId()
{
return moduleId;
}
......
public void setModuleId(String moduleId[]) {
this.moduleId = moduleId;
}
public String getId()
{
return id;
} public void setId(String id) {
this.id = id;
}
public String getUser_name() {
return user_name;
} public void setUser_name(String user_name) {
this.user_name = user_name;
}
public void setUser_id(String user_id) {
this.user_id = user_id;
}
public String getUser_id() {
return user_id;
}
}
......===========jsp:
...<TABLE borderColor="#687bc4" cellSpacing="0" borderColorDark="#ffffff" cellPadding="0" width="670" borderColorLight="#687bc4" border="1" style="TABLE-LAYOUT: fixed" >
<%int trNo=0;%>
<logic:present name="UserKengenEntryForm" property="moduleId" >
<logic:iterate id="infoList" name="UserKengenEntryForm" property="moduleId">
<tr >
<%trNo++;%> <html:hidden name="UserKengenEntryForm" property='<%="kinouCode["+(trNo-1)+"]"%>' />
<TD align="left" width="120"> <bean:write name="UserKengenEntryForm" property='<%="moduleId["+(trNo-1)+"]"%>' /></TD>
<TD align="left" width="120"> <bean:write name="UserKengenEntryForm" property='<%="gyoumuName["+(trNo-1)+"]"%>' /></TD>
<TD align="left" width="160"> <bean:write name="UserKengenEntryForm" property='<%="kinouName["+(trNo-1)+"]"%>' /></TD>
<TD align="middle" width="130">
<html:checkbox name="UserKengenEntryForm" property='<%="kengenFlag["+(trNo-1)+"]"%>' onclick="<%="fnc_simpleChk("+(trNo-1)+")"%>"/>
</TD>
<TD align="middle" width="140">
<html:select name="UserKengenEntryForm" property='<%="kengenRoll["+(trNo-1)+"]"%>'>
<html:option value="1" >管理員</html:option>
<html:option value="0" >一般ユーザー</html:option>
</html:select>
</TD>
</TR>
</logic:iterate>
</logic:present>
<input type="hidden" value="<%=trNo%>" name="count" id="count">
</TABLE>
...
<form-beans>
<form-bean name="HelloForm" type="org.apache.struts.action.DynaActionForm">
<form-property name="userName" initial="" type="java.lang.String[]"/>
</form-bean>
</form-beans>
这个方法我也试过了,但是问题是无论如何他的init的值是一个首地址。有什么办法解决这个问题呢?而且他在返回的过程中,会出现javascript错误。到目前为止还没有觉得strust有什么好用之处。反到觉得他很多时候很烦琐
只要在formbean 里将userName
设定为userName[]就可以解决的
LZ没有FormBean.class,是在struts-config.xml里面配置的动态FORM。我也想知道这个问题的最终答案。