Student类用于接收表单中的值,里面有province和city属性,然后在StudentAction中定义private Student student极其setStudent(Student student)方法,
下面是使用s:doubleselect生成两个文本框,第一个是吉林省和辽宁省,选中吉林省,第二个文本框就显示长春市和吉林市,依次类推!
<s:doubleselect list= "{ '吉林省 ', '辽宁省 '} " name= "student.province " label= "%{ '所在地址 '} " doubleName= "student.city " doubleList= "top== '吉林省 '?{ '长春市 ', '吉林市 '}:{ '沈阳市 ', '丹东市 ', '鞍山市 '} "> </s:doubleselect>
因为name和doubleName都是student.属性,因为有个.,所以自动生成的脚本就不好使了啊!如果改成province和city就可以了,不过我使用的是模型驱动啊!必须得写student.province啊!请教您我该怎么处理这样的脚本问题呢?谢谢啊!
上面的问题主要是因为JAVASCRIPT也是面向对象的,自动生成的脚本会有这样几句:var m=document.StudentForm.student.city;这样的话,就会提示脚本错误“city不是对象”,也就是说student.city并没有当作整体指向对象,而是被拆开了!
如果我们手写脚本的话,可以这样:var m=document.StudentForm[ 'student.city '];就能解决这个问题,可是s:doubleselect的脚本是WebWork自己生成的啊!
小弟请问各位高手,这个问题怎么解决啊???
如果不用模型驱动,把Student中的属性直接写到Action中倒是没有student.属性的问题了,可是与Hibernate整合的时候就有问题了哦,因为Student是持久化类,必须得有的啊!所以这种做法应该行不同的哦!
------解决方案--------------------
希望WebWork高手伸出援手哦!谢谢!