日期:2014-05-18  浏览次数:20686 次

★[求助]关于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高手伸出援手哦!谢谢!