jquery ajax post 方法给出内部服务器错误
本文关键字:内部 服务器 错误 ajax post 方法 jquery | 更新日期: 2023-09-27 18:20:20
$("[id$=_btnPostReminder]").click(function(){
var a = $find("<%=Editor1.ClientID%>");
var remindertext = a.get_content();
var re=$("#<%=hiddReminderTicketId.ClientID%>").text();
var res= $("#<%=txtReminderon.ClientID%>").val();
$.ajax({
type: "POST",
url: "AllTickets.aspx/btnPostReminder",
data: '{TicketId: ' + re + ',remindertext: ' + remindertext + ',reminderon: ' + res + '}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success:
function Ret(response) {
var Result=response.d
alert(Result)
$("#<%=txtReminderon.ClientID%>").val("")
$('#<%=hiddReminderTicketId.ClientID %>').text("")
$('#<%=lblAlert.ClientID %>').text("Set Successfully");
return false;
},
error: function(data, status, jqXHR) {
alert(jqXHR);
}
});
return false;
});
C# 代码隐藏:
[System.Web.Services.WebMethod()]
public static string btnPostReminder(Int64 TicketId, string remindertext, string reminderon)
{
Common objCommon = new Common();
DAL objDal = new DAL();
SqlParameter[] para = new SqlParameter[4];
para[0] = new SqlParameter("@ticketid", DbType.Int64);
para[0].Value = TicketId;
para[1] = new SqlParameter("@REMINDERTEXT", DbType.String);
para[1].Value = remindertext;
para[2] = new SqlParameter("@REMINDERON", DbType.DateTime);
para[2].Value = objCommon.ReturnDate(reminderon);
para[3] = new SqlParameter("@CREATEDBY", DbType.Int64);
para[3].Value = Convert.ToInt64(1);
objDal.ExecuteSP("CREATE_REMINDER", para);
return " successfully";
}
好的 发现您的问题,您正在传递Int64
作为参数,否则该参数应该是字符串,因此当将其更改为以下内容时,我收到成功消息:
[System.Web.Services.WebMethod()]
public static string btnPostReminder(string TicketId, string remindertext, string reminderon)
{
return " successfully";
}
您的数据也应如下所示:
data: '{"TicketId":"' + re + '","remindertext":"' + remindertext + '","reminderon":"' + res + '"}',
作为参数的字符串传递,并传递给TryParse
以查看它是否属于 int
类型。