使用java脚本和JQuery显示消息,而不是抛出异常
本文关键字:抛出异常 消息 显示 java 脚本 JQuery 使用 | 更新日期: 2023-09-27 18:19:33
如何使用Javascript和JQuery显示消息(通知用户组是否成功添加),而不是抛出错误。实际上,这个代码检查数据库中是否已经存在组名。
控制器:
[HttpPost]
public int CreateGroup(UserGroup group)
{
return bc.Create(group, user.id);
}
用户组类别:
UserGroupDalc Dalc = new UserGroupDalc();
public int Create(UserGroup group, int creatorId)
{
if(ByName(group.name) != null) throw new ArgumentException(string.Format("Group name: {0} is already exist.", group.name));
return Dalc.CreateGroup(group, creatorId);
}
用户组dalc类:
public int CreateGroup(UserGroup group, int creatorId) {
connection();
com = new SqlCommand("spp_adm_user_group_ins", conn);
com.CommandType = CommandType.StoredProcedure;
com.Parameters.AddWithValue("@name", group.name);
com.Parameters.AddWithValue("@userid", group.creator_id);
conn.Open();
int i = com.ExecuteNonQuery();
if (i >= 1)
{
return 1;
}
else
{
return 0;
}
此js用于发布数据:
save: function () {
var jForm = $("#form1");
Metronic.blockUI();
GroupAPI.create(jForm.serialize(),
function (data) {
console.log(data);
},
function (error) {
console.log(error);
},
function () { Metronic.unblockUI(); });
}
}
}();
var GroupAPI = function () {
var url_create = "api/usergroup/createGroup";
var url_list = "api/usergroup/list";
return {
create: function (item, done, fail, always) {
var jqxhr = $.post(url_create, item);
jqXhrHandler(jqxhr, done, fail, always);
}
}
}();
更改用户组类
UserGroupDalc Dalc = new UserGroupDalc();
public int Create(UserGroup group, int creatorId)
{
if(ByName(group.name) != null){
return 1;
}
return Dalc.CreateGroup(group, creatorId);
}
js
save: function () {
var jForm = $("#form1");
Metronic.blockUI();
GroupAPI.create(jForm.serialize(),
function (data) {
//console.log(data);
if (data == 0)
{
alert('added');
}else if(data == 1){
alert('already exist');
}
},
function (error) {
console.log(error);
},
function () { Metronic.unblockUI(); });
}
}
}();
最好是响应422状态代码,在这种情况下表示验证失败,服务器无法处理请求,您也可以将用户可读的消息放在响应体中
422(不可处理实体)状态码意味着服务器了解请求实体的内容类型(因此415(不支持的媒体类型)状态码是不合适的),并且请求实体的语法是正确的(因此400(坏请求)状态码不合适),但无法处理包含的指令。例如,如果XML请求主体包含格式良好(即语法正确)但语义错误的XML指令,则可能出现这种错误情况。