首页新闻找找看学习计划

EasyUI后台成功删除记录后,前台却总显示"删除失败"

0
悬赏园豆:80 [待解决问题]

EasyUI后台成功删除记录后,前台却总显示"删除失败"
用的是EasyUI,具体错误描述在代码中,请赐教,感谢!
在JS文件中是这样写的:

function del() {
var arr = getSelectedArr();
if (arr.length > 0) {
$.messager.confirm(
'提示信息', '您确认要删除吗?', function (data) {
if (data) {
$.ajax({
url:
'UserService.ashx?Action=delete&id=' + arr2str(arr),
type:
'GET',
timeout:
1000,
error:
function () {
$.messager.alert(
'错误', '删除失败!', 'error'); //总是执行这一句,没来得及返回值
//
grid.datagrid('reload');
//
grid.datagrid('clearSelections');
},
success:
function (data) {
eval(
'data=' + data);
if (data.success) { //成功原本是应该执行这里的
grid.datagrid('reload');
grid.datagrid(
'clearSelections');
}
else {
$.messager.alert(
'错误', data.msg, 'error');
}
}
});
}
});
}
else {
Msgshow(
'请先选择要删除的记录。');
}

后台处理方法:

private string Delete()
{
string result = string.Empty;
bool success = false;
string idString = ParamsofEasyUI.RequstString("id");
List
<string> idList = SiteFun.GenerateList(idString, ",");
foreach (var item in idList)
{
success
= dal.Delete(new Guid(item)); //这里进行数据交互,成功则返回true,否则返回false
if (success == false)
break;
}
result
= JsonHelper<UserModel>.BoolToJson(success);
return result;
}

数据交互:

public bool Delete(Guid id)
{
bool result = false;
using (BricksCMSEntitiesProxy proxy = this.GetProxy())
{
var record
= proxy.Context.BC_User.Where(v => v.ID == id).FirstOrDefault();
if (record != null)
{
proxy.Context.DeleteObject(record);
result
= true;
}
proxy.Context.SaveChanges();
//为什么执行到这里,浏览器前台就响应了?都还没来得及返回值
return result;
}
}

北极冰雪的主页 北极冰雪 | 初学一级 | 园豆:74
提问于:2011-09-10 22:10
< >
分享
所有回答(6)
0

 proxy.Context.SaveChanges(); 

这个注释掉看看。

不调试也不是很清楚。

天使与鸟人 | 园豆:225 (菜鸟二级) | 2011-09-13 11:39
0

问题不在前端,在后端。  要嘛你路径错了UserService.ashx?Action=delete&id=,要嘛就是后端 出异常了。

life++ | 园豆:310 (菜鸟二级) | 2011-09-13 17:41
0

请问lz,easy好用吗

lawbc | 园豆:63 (初学一级) | 2011-09-14 11:37
0

.....

success: function (data) {
alert("这里可弹出吗?楼主,如果不能,就是后台处理出错了,如果能,就可能是下面的eval出问题了。");

eval('data='+ data);

.....

}

--------------

var json=eval('('+data+')');

readonly | 园豆:406 (菜鸟二级) | 2011-09-14 18:23
0

火狐+Firebug看看

有个:网络>XHR

看看啥错误

xxwgcg | 园豆:243 (菜鸟二级) | 2011-09-15 08:38
0
return result;

此处的result 必须是标准的json格式{"key","value"}
你可以这样返回
string result="\"msg\":\"true\"";
return result;
wyw308 | 园豆:144 (初学一级) | 2012-08-13 06:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册