手机
当前位置:查字典教程网 >编程开发 >AJAX相关 >ajax struts2 下拉框赋值(适合所有)
ajax struts2 下拉框赋值(适合所有)
摘要:1.此代码适合所有下拉列表取值2.一个项目所有的下拉列表只需要这一个公用方法;步骤一:创建实体bean;复制代码代码如下:publiccla...

1.此代码适合所有下拉列表取值

2.一个项目所有的下拉列表只需要这一个公用方法;

步骤一:创建实体bean;

复制代码 代码如下:

public class DictionaryBean {

private String value_Id;//下拉框option的id

private String value;//下拉框option的值

private String flag;//对应下拉框的值的类型,如flag=1,下拉列表为省份信息,flag=2为市级信息等;

public String getValue_Id() {

return value_Id;

}

public void setValue_Id(String valueId) {

value_Id = valueId;

}

public String getValue() {

return value;

}

public void setValue(String value) {

this.value = value;

}

public String getFlag() {

return flag;

}

public void setFlag(String flag) {

this.flag = flag;

}

}

步骤二 在你action里面写个如下取listbean的方法,listbean封装的是 bean.valueId 和bean.value;

复制代码 代码如下:

/**

*

* @author ZhuangZi

* @class com.hzdracom.action.DictionaryAction

* @method listDictionary

* @Directions 获取下拉列表信息公用方法

* @date 2013-3-21上午10:08:39 void

*/

public void listDictionary(){

String json="";

try{

listDictionary = dictionaryService.handleListDictionary(bean);

json=JSON.toJSONString(listDictionary);//转换成json字符串

HttpServletResponse response=ServletActionContext.getResponse();

response.setContentType("text/html");

response.setCharacterEncoding("utf-8");

PrintWriter out;

out = response.getWriter();

out.println(json);

out.flush();

out.close();

}catch(Exception e){

e.printStackTrace();

}

}

sturts.xml 配置信息

复制代码 代码如下:

<action name="listDictionary" method ="listDictionary">

</action>

步骤三 封装公用js代码js文件名字 dictionary.js

复制代码 代码如下:

/**

*↓↓↓↓↓↓↓↓↓↓

*作者:ZhuangZi

*类名:公用方法初始化

*功能:公用方法初始化

*详细:公用方法初始化

*版本:1.0

*日期:2013-03-22

*说明:

*↑↑↑↑↑↑↑↑↑↑

*/

$(function(){

/*1.下拉框取值↓↓↓*/

selectBox([

复制代码 代码如下:

{id_:"#down_type",id:"#downtype" ,flag:"2"},

{id_:"#kuai_flag",id:"#kuaiflag" ,flag:"3"}]);

//selectBox{[{id_:"你的下拉框的被选中值的ID",id:"下拉框的ID",flag:"下拉框值的类型"}]};

复制代码 代码如下:

//有一个{id_:"#kuai_flag",id:"#kuaiflag" ,flag:"3"}这种对象就有一个下拉框信息;

});

/**

*↓↓↓↓↓↓↓↓↓↓

*作者:ZhuangZi

*类名:获取下拉框值公用方法

*功能:下拉列表取值

*详细:加载下拉列表

*版本:1.0

*日期:2013-03-22

*说明:如果新加一个下拉框 需要给数组list添加一个对象

*参数:id_:下拉框被选中值的ID;id:下拉框ID;flag:下拉框值的类型,即显示内容类型

*↑↑↑↑↑↑↑↑↑↑

*/

function selectBox(list){

for ( var i = 0,len = list.length; i < len; i++) {

(function(bean){

var pageId=$(bean.id_).val();

$.ajax({

type:'post',

url:'../dictionary/listDictionary.do',

data:'bean.flag='+bean.flag,

dataType:'json',

success:function(json){

for(var i=0; i< json.length;i++){

$(bean.id).append("<option value='"

+json[i].value_Id+"'>"

+json[i].value+"</option>");

if(pageId !=null && pageId!="" && pageId==json[i].value_Id){

$(bean.id).find("option").attr("selected",true);

}

}

},

error:function(){

alert('error');

}

});

})(list[i]);

}

}

步骤四 页面信息 下面隐藏域信息 ,就是你选某项查询后,它就会被选中的值

引入js

复制代码 代码如下:

<script language="javascript1.2" src="<s:url value="/js/jquery.js" includeParams="false"/>"></script>

<script language="javascript1.2" src="<s:url value="/js/dictionary.js" includeParams="false"/>"></script>

复制代码 代码如下:

<s:hidden id="down_type" name="yhaoPortalsDownBean.downType"/>

<td width="25%" height="33">下载类型标识:</td>

<td width="25%" height="33">

<select id="downtype" name="yhaoPortalsDownBean.downType" >

<option value="">---所有---</option>

</select>

</td>

步骤五 附加信息 dao里面方法 下面方法用到的flag 就是js里面flag传的值

复制代码 代码如下:

public List<DictionaryBean> handleListDictionary(DictionaryBean bean)throws DataAccessException,Exception {

List<DictionaryBean> list = new ArrayList<DictionaryBean>();

try{

String sql="";

/* 获取页面下拉列表*/

if (bean.getFlag().equals("1")) {

sql = "SELECT PAGE_FLAG VALUE_ID,PAGE_NAME VALUE FROM YHAO_PORTALS_PAGE";

}

/* 获取下载类型标识下拉列表*/

if (bean.getFlag().equals("2")) {

sql = " SELECT DOWNTYPE_FLAG VALUE_ID,DOWNTYPE_NAME VALUE FROM YHAO_PORTALS_DOWNTYPE ";

}

/* 获取块标识下拉列表*/

if (bean.getFlag().equals("3")) {

sql = " SELECT KUAI_FLAG VALUE_ID,KUAI_NAME VALUE FROM YHAO_PORTALS_KUAI ";

}

list = this.query(sql,new DictionaryList());

}catch(Exception e){

e.printStackTrace();

}

return list;

}

好了已经完成了。

【ajax struts2 下拉框赋值(适合所有)】相关文章:

ajax 自动完成下拉框 自动提示位置问题

ajax 服务器文本框自动填值

ajax 乱码的一种解决方法

Ajax核心XMLHttpRequest总结

ajax 检测用户名是否被占用

基于Ajax实现下拉框联动显示数据

ajax完美解决的下拉框的onchange问题

Ajax局部刷新应用案例---简单登录

AJAX 简介及入门实例

ajax Suggest类似google的搜索提示效果

精品推荐
分类导航