struts1中省市级联菜单怎么写 使用struts1和hibernate以及spring集成框架怎么写动态的省市级联菜单? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 AJAX实现就行了 你这么做干嘛? 思路就是: 界面两个下拉框,分别为:“xxx省”----“xxx市”初始的时候可以把所有省份都查询出来装进去以value为省份ID,显示的text为省份名称当“xxx省”下拉框值发生改变的时候,调用JS函数把当前下拉框选中的值,也就是那个value用ajax的方式传到action,此时拿到省份ID就去查询他下面的所有市,然后以json或者xml的方式返回给ajax的回调函数。界面拿到数据后装进“xxx市”下拉框网上也有很多类似的例子,搜索一下大把。代码就不贴了。 这个用异步就是无需刷新页面,不用异步要刷新下页面。选第一个下拉列表的时候,得到它的值。根据它的值去查询第二个下拉列表,然后把第二个下拉列表的用js或jstl、struts标签把值加载出来,并设置第一个下拉列表的值,也就是刚才得到选择的值。如果有第三级,就用上2个所选择的条件去查询第三个列表的list,然后设置选中并加载第三个的下拉列表的option。在此期间,第一个、第二个的值又要加载。 onChange 方法 提交请求就得了 真不愿意想这些那些的 联动和使用struts1和hibernate以及spring有什么关系? 在后台将某一个省下的地市查出来,out = response.getWriter();out.print(地市列表.toString());在AJAX里解析这个响应信息创建optionvar option = new Option();option.value = 地市编号;option.text = "地市名称";select.add(select.options.length, option); 应该是他做的 SSH项目要用到这个小功能吧 前两天在公司刚写过,虽然觉得写得不怎么样,不过还是跟lz点提示吧。用Ajax就可以了,拿从省生成市比喻。首先在页面留个区域给市,有个<select>的地方,给他一个id。然后在省级下拉框改变时调用一个JavaScript函数,这个函数用Ajax发送省份的id或名字给一个action,这时候要注意含中文字符串的编码,要先用JavaScript的escapeURL两次编码再发送,到action中再解码。action收到之后再进行相关的数据库查询,讲查询到的结果用PrintWriter写进流中,写的时候将结果放在<option>中就可以了,在action中return null就ok。回到页面时候再用Ajax的对象xmlHttpRequest.responseText得到刚才写进流的内容,放到刚才<select>的那个id的地方就可以了。我也是自己摸索出来的,没在网上查过,也算是实现了,如果lz发现有更好的写法告诉我,互相学习一下。 基本没什么关系只是用ajax异步交互就可以了 tomcat服务器用一段时间就连接不上了 一个简单项目开发设计思路? 急急急急急急急急急急急急急急急急急急急急急急 高手请进啊! 关于用户权限的问题 IE开启Excel的内幕 weblogic部署问题,安装时提示无法访问所选应用程序 请高手指教,如何显示和更新包含有Varray集合的记录 [50分求助]servlet运行不起来…… 如何加入jpg图片 spring security cas https请求变成了http问题 JSP加载swf文件(在线文档阅读)的问题 jsp的站点WIN-INF文件下 web.xml 问题
界面两个下拉框,分别为:“xxx省”----“xxx市”
初始的时候可以把所有省份都查询出来装进去
以value为省份ID,显示的text为省份名称
当“xxx省”下拉框值发生改变的时候,调用JS函数把当前下拉框选中的值,也就是那个value用ajax的方式传到action,此时拿到省份ID就去查询他下面的所有市,然后以json或者xml的方式返回给ajax的回调函数。
界面拿到数据后装进“xxx市”下拉框网上也有很多类似的例子,搜索一下大把。代码就不贴了。
选第一个下拉列表的时候,得到它的值。根据它的值去查询第二个下拉列表,
然后把第二个下拉列表的用js或jstl、struts标签把值加载出来,并设置第一个下拉列表
的值,也就是刚才得到选择的值。
如果有第三级,就用上2个所选择的条件去查询第三个列表的list,然后设置选中并加载第三个的
下拉列表的option。
在此期间,第一个、第二个的值又要加载。
out = response.getWriter();
out.print(地市列表.toString());
在AJAX里解析这个响应信息
创建option
var option = new Option();
option.value = 地市编号;
option.text = "地市名称";
select.add(select.options.length, option);
用Ajax就可以了,拿从省生成市比喻。
首先在页面留个区域给市,有个<select>的地方,给他一个id。然后在省级下拉框改变时调用一个JavaScript函数,这个函数用Ajax发送省份的id或名字给一个action,这时候要注意含中文字符串的编码,要先用JavaScript的escapeURL两次编码再发送,到action中再解码。
action收到之后再进行相关的数据库查询,讲查询到的结果用PrintWriter写进流中,写的时候将结果放在<option>中就可以了,在action中return null就ok。
回到页面时候再用Ajax的对象xmlHttpRequest.responseText得到刚才写进流的内容,放到刚才<select>的那个id的地方就可以了。
我也是自己摸索出来的,没在网上查过,也算是实现了,如果lz发现有更好的写法告诉我,互相学习一下。
只是用ajax异步交互就可以了