这两天在使用ww:select标签时碰到一个奇怪的问题,折腾了2天,结果是个很小的也是很容易忽视的错误造成的,记下来,以免忘记。
jsp所调用代码:
<ww:select name="pCategoryId" list="pCategorys" listKey='id' listValue='name' οnchange="a()"/>
java代码里:
private int pCategoryId;
private List pCategorys;
其中,list里是Category类列表,而Category的代码里:
private Long id;
private String name;
粗略看来这样子似乎没什么不对,但是每次选择select下拉框的不同选项,结果还是页面上select都显示第一项,在页面上用source查看生成的页面代码,发现select的任何一个option都没有被选中,连第一项都没有,觉得很奇怪,在无数次无益的抓狂后,仔细的推敲了代码后,把目光锁定在private int pCategoryId上,试着把int 换成Long后,问题奇迹般的解决了,此刻才意识到Long 和int是多么的不同。
长路漫漫,其修远兮……
jsp所调用代码:
<ww:select name="pCategoryId" list="pCategorys" listKey='id' listValue='name' οnchange="a()"/>
java代码里:
private int pCategoryId;
private List pCategorys;
其中,list里是Category类列表,而Category的代码里:
private Long id;
private String name;
粗略看来这样子似乎没什么不对,但是每次选择select下拉框的不同选项,结果还是页面上select都显示第一项,在页面上用source查看生成的页面代码,发现select的任何一个option都没有被选中,连第一项都没有,觉得很奇怪,在无数次无益的抓狂后,仔细的推敲了代码后,把目光锁定在private int pCategoryId上,试着把int 换成Long后,问题奇迹般的解决了,此刻才意识到Long 和int是多么的不同。
长路漫漫,其修远兮……