public class XxxAction extends BaseAction{ private boolean isNumber; public boolean isNumber() { return isNumber; } public void setNumber(boolean isNumber) { this.isNumber = isNumber; } }
//前面的jsp代码已省略,jsp嵌套进js代码 var isNumber = '${isNumber}';//取得后台传过来的值,取到的值都为'' //或者是 var isNumber = '<s:property value="isNumber"/>';//取到的值都为''
导致以上原因是因为在Action中定义boolean类型的属性值为isXxx,跟eclipse开发工具生成的get方法名字相同,而前台取值${isNumber}或是<s:property value="isNumber"/>都会调用相应的get方法去取值,这就造成调用时没法区分是调用的是isXxx()方法还是isXxx属性,或者两者都不是。以上只是分析,过段时间再确认,最近太忙了。哪位知道的话留言下。