[Struts2]s:combobox标签在使用出现问题:改变下拉列表的选中值,文本框的值不能随着被改变

来源:互联网 发布:阿里云服务器磁盘扩容 编辑:程序博客网 时间:2024/05/29 19:52

 <s:combobox>标签在使用出现问题:改变下拉列表的选中值,文本框的值不能随着被改变

 

问题描述:

 

在学习<s:combobox>标签时,有s-combobox.jsp页面,内容如下:

 

 

运行时,生成的html页面如下:

 

 

 

 改变下拉列表的选中值,文本框的值不能随着被改变,而且浏览器报js错误,仔细查得是autoPopulate_s-combobox_book这个自动生成的js方法方法名中有“-”造成语法解析错误

 

由此可见 ,<s:combobox>在生成html代码时,js方法名和jsp的文件名有关,而jsp文件名为“s-combobox.jsp”带有“-”,所以导致问题的发生

 

解决方法一:

改变jsp文件名为“s_combobox.jsp”

 

解决方法二:

为<s:form>指定属性id,名为“s_combobox”,中间不要带“-”就可以了,即:

<s:form id="s_combobox">

 

做上述修改后,问题得到解决