Я новичок в мире запросов ajax и asp.net. Я пытаюсь отправить запрос ajax на страницу aspx. Когда я отлаживаю серверную сторону, кажется, все в порядке, но ответ печатает сообщение об ошибке? Я попытался изменить Response.ContentType, но это не решило мою проблему. Какие-либо предложения?отправка запроса ajax ASP.NET
Вот мой Javascript код:
function onclick(){
$.ajax({
url: "SandaAJAXRequests.aspx",
type: "post",
data: JSON.stringify({ "first": "getevent","second":"data" }),
dataType: 'json',
success:
function (response)
{
roundNumber = 1;
numberofblackwins = 0;
numberofredwins = 0;
ifBattleIsOver = false;
$("#round").text(roundNumber);
var result = response.split(",");
name1 = result[1];
name2 = result[2];
var r = confirm("Is " + name1 + " the black competitor?");
if (r == true) {
$("#black_competitor_name").text(name1);
$("#red_competitor_name").text(name2);
}
else {
$("#black_competitor_name").text(name2);
$("#red_competitor_name").text(name1);
}
},
error: function (xhr) {
alert("Problem sending data to the server");
}
});
}
Вот моя сторона сервера:
protected void Page_Load(object sender, EventArgs e)
{
string jsonString = String.Empty;
Request.InputStream.Position = 0;
using (var inputStream = new StreamReader(Request.InputStream))
{
jsonString = inputStream.ReadToEnd();
}
string data = jsonString.Replace("\\", "");
char[] seperators = { ':', ',', '"' };
string[] a = data.Split(seperators);
string t = a[4];
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
object serJsonDetails = javaScriptSerializer.Deserialize(jsonString, typeof(object));
string requestType = serJsonDetails.ToString();
switch (t)
{
case "getevent":
SandaEvent current = (SandaEvent)Application["CurrentEvent"];
Response.ContentType = "text/plain";
String response = current.id + "," + current.name1 + "," + current.name2;
Response.Write(response);
Response.End();
break;
}}
Какое сообщение об ошибке? Это одно: 'alert (« Проблема отправки данных на сервер »);'? Посмотрите на консоль JS вашего браузера, вероятно, будут полезные сообщения об ошибках. Посмотрите вкладку Net в своем браузере, она покажет вам, какие данные вы отправляете и что отвечает сервер. Функция ошибки принимает три аргумента. Посмотрите на их значения, вместо того, чтобы предупреждать жестко закодированное и бесполезное сообщение об ошибке. – Quentin