[Webwork]关于WebWork的ww:doubleselect标签的困惑!

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)