SSH 和 EasyUI结合的 combobox默认值问题解决方法

简介: jsp页面的combobox组件: <label>所属单位:</label><input class="easyui-combobox" name="entityId" id="entityId" data-options="<span style="white-space:pre"> </span>url:'

jsp页面的combobox组件:

<label>所属单位:</label>
<input class="easyui-combobox" name="entityId" id="entityId" data-options="
<span style="white-space:pre">									</span>url:'${ctx}/action/${act}_roleList',
		<span style="white-space:pre">							</span>method:'get',
									valueField:'id',
									textField:'name',
									panelHeight:'auto',
									">

编辑的JS

		function editJS(){
	            var row = $('#dataList').datagrid('getSelected');//获取列表中选中的行对象
	            if (row){
	                $('#dlg').dialog('open').dialog('setTitle','编辑实验室');//弹出编辑对话框,下面赋值,对话框包括一个combobox,和若干input
	                $('#fm').form('load',row);
	                url = '${ctx}/action/${act}_update?editId='+row.id;//更改对话框的提交URL(之前做过添加功能)
	                //获取combobox的列表
	                var data = $('#entityId').combobox('getData');
	                for(var i=0;i<data.length;i++){
	                	if(row.roleId == data[i].id){//匹配该row对象的主键ID与列表中哪个的ID相同
	                		 //设置默认值
	                		 $('#entityId').combobox('setValue',data[i].name);
	                		 break;
	                	}
	                }
	            }
       		}
JAVA后台处理

public String update(){
		result = new Result();
		Lab lab = labService.findById(editId);
		
		lab.setName(name);
		lab.setDescription(description);
		//对entityId这个参数进行判断,如果是数字,说明用户点击了combobox进行选择,如果是字符串,我们刚才的JS会在页面生成一个name为entityId的input,这时如果用户没有改变该项,它的值会是我们设置的默认值,即字符串;相当于默认设置的时候,显示的是input,选择的时候是select
		if(CommonUtility.isNumeric(entityId)){
			//该属性是数字,说明经过select进行选择了
			SysRole role = roleService.findById(Integer.parseInt(entityId));
			lab.setRole(role);
		}else{
			//该属性是字符串,说明没有经过选择,该属性没有改变
			
		}
		labService.update(lab);
		result.setSuccess("修改成功!");
		return sendJson(result);
	}



相关文章
Easyui combobox 取值赋值解答
Easyui combobox 取值赋值解答
|
1月前
|
JavaScript
EasyUi js 加载数据进下拉框combobox
EasyUi js 加载数据进下拉框combobox
|
6月前
Easyui datagrid 编辑结束时combobox显示value而不显示text
Easyui datagrid 编辑结束时combobox显示value而不显示text
|
6月前
easyUI datagarid 编辑状态下的combobox动态赋值
easyUI datagarid 编辑状态下的combobox动态赋值
|
6月前
EasyUI的combobox
EasyUI的combobox
|
6月前
|
JSON 数据格式
easyUI 的combobox如何获取除valueField和textField外的三个值
easyUI 的combobox如何获取除valueField和textField外的三个值
|
存储 关系型数据库 MySQL
Easyui datagrid combobox输入框下拉(取消)选值和编辑已选值处理
Easyui datagrid combobox输入框下拉(取消)选值和编辑已选值处理
349 0
|
存储 JSON JavaScript
Easyui datagrid combobox输入框非法输入判断与事件总结
Easyui datagrid combobox输入框非法输入判断与事件总结
147 0
EasyUI combobox选中项变化事件存在的问题
本文目录 1. 背景 2. 写法 3. 实际存在的问题
353 0
|
JSON 数据格式
EasyUI–下拉框combobox
首先声明,所谓的数据控件这一个概念,EasyUI官方应该也没这个说法。猫哥是感觉网页上经常使用的、经常需要从后台获取数据后显示到控件内部的,有这么四个:下拉框、下拉列表、树、表格。
205 0
EasyUI–下拉框combobox