使用ajax加载数据字典,生成select

Posted zhanghaibk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ajax加载数据字典,生成select相关的知识,希望对你有一定的参考价值。

//使用ajax加载数据字典,生成select
//参数1: 数据字典类型 (dict_type_code)
//参数2: 将下啦选放入的标签id
//参数3: 生成下拉选时,select标签的name属性值
//参数4: 需要回显时,选中哪个option
function loadSelect(typecode,positionId,selectname,selectedId){
	//1 创建select对象,将name属性指定
	var $select =  $("<select name="+selectname+" ></select>");
	//2 添加提示选项
	$select.append($("<option value=‘‘ >---请选择---</option>"));
	//3 使用jquery 的ajax 方法,访问后台Action
	$.post("${pageContext.request.contextPath}/BaseDictAction", { dict_type_code:typecode},
	  function(data){
	   		//遍历
	//4 返回json数组对象,对其遍历
	   		$.each( data, function(i, json){
		// 每次遍历创建一个option对象
	   			var $option = $("<option value=‘"+json[‘dict_id‘]+"‘ >"+json["dict_item_name"]+"</option>"); 
	   			
			if(json[‘dict_id‘] == selectedId){
			//判断是否需要回显 ,如果需要使其被选中
				$option.attr("selected","selected");
			}
		//并添加到select对象
				$select.append($option);
	   		});
	  },"json");
		
	//5 将组装好的select对象放入页面指定位置
	$("#"+positionId).append($select);
}


function loadUserRoleSelect(typeUrl,positionId,selectname,sId,selectedId) {

//创建select
var $select = $("<select name="+selectname+" id="+sId+"></select>");
$select.append($("<option value=‘‘>---请选择---</option>"));

$.ajax({
"async":true,
"type":"post",
"url":typeUrl,
"success":function(data){
$.each(data,function(i,json){
var $option = $("<option value=‘"+json.id+"‘>"+json.roleName+"</option>");
$select.append($option);
if(json[‘userRole‘] == selectedId){
//判断是否需要回显 ,如果需要使其被选中
$option.attr("selected","selected");
}
})
},
"dataType":"json"
});
$("#"+positionId).append($select);
}



<script type="text/javascript">
$(function() {
loadUserRoleSelect(
"${pageContext.request.contextPath}/userRoleList.do",
"selectBd", "userRole","userRole","${user.userRole}");
});
</script>

  



































以上是关于使用ajax加载数据字典,生成select的主要内容,如果未能解决你的问题,请参考以下文章

如何将模型数据加载到在 Yii 中使用 Ajax 过滤的 Select2 下拉列表

select2使用ajax加载数据无法选择任何选项

怎样将后台数据显示到jsp页面的select中去

Python代码阅读(第40篇):通过两个列表生成字典

使用 onclick AJAX 调用加载 Select2 语句数据

执行AJAX返回HTML片段中的JavaScript脚本