Easyui接收后台json数据处理的小结(二)

       EasyUI的combobox级联之后,我又遇到了EasyUI与后台交互的问题,在此次的小项目中主要是Spring的restful四种行为get,post,put和delete实现查、增、改、删。开始时由于增加和修改都使用同一个表单,总是无法修改。后发现原因是一是form表单只默认两种方法即post和get,二是其提交方式一旦写定都无法修改,后来只能另写一个表单load选中的datagrid的行,然后使用Ajax方法提交要修改的数据,js代码如下
function editData(){
	var selectedRows=dg1.datagrid('getSelections');//选中要编辑的行
	if(selectedRows.length!=1){
		$.messager.alert("系统提示","请选择一条要编辑的数据!");
		return;
	}
	var row=selectedRows[0];
	$("#dlg1").dialog("open").dialog("setTitle","编辑年级信息");
	$("#fm1").form("load",row);
}

function saveEditData(){
	var selectedRows=dg1.datagrid('getSelections');
	if(selectedRows.length!=1){
		return;
	}
	var row=selectedRows[0];
	$.ajax({
		type:'put',                       //put方法进行修改
		url:'api/class/'+row.idcls+'/'+$("#clsnum1").val(),
		success:function(result){
			if(result.errorMsg){
				$.messager.alert("系统提示",result.errorMsg);
				return;
			}else{
				$.messager.alert("系统提示","保存成功");
				$("#fm1").form("clear");
				$(" #dlg1").dialog("close");
				dg1.datagrid("reload");
			}
		}
	});
}

在restful中直接接受表单数据,这里不再赘述。由于删除行为,后台没有写多条记录同时删除,所以我就写了一个for函数,代码如下:

function deleteData(){
	var selectedRows=dg1.datagrid('getSelections');
	if(selectedRows.length==0){
		$.messager.alert("系统提示","请选择要删除的数据!");
		return;
	}
	var strIds=[];
	for(var i=0;i"+selectedRows.length+"条数据吗?",function(r){
		 if(r){
		     for(var i=0;i
查询功能最好实现,没有遇到任何问题:

function searchData(){
	url="api/class/key="+ $("#searchs").val(),
	dg1.datagrid('load',url);
}
欢迎大家指正


你可能感兴趣的:(Easyui接收后台json数据处理的小结(二))