#javascript #jquery #asp.net #ajax #vb.net
#javascript #jquery #asp.net #ajax #vb.net
Вопрос:
Я много читал об этом на этом форуме, но я не могу заставить это работать.
Я хочу использовать функцию ajax на моем asp.net веб-приложение
Итак, вот Javascript на VerifMain.aspx
$(document).ready(function () {
//menu()
$("#btnImprimer").click(function () {
$.ajax({
type: "POST",
url: "/VerifMain.aspx/Lol",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
alert("Good");
},
error: function (msg) {
alert(msg);
}
});
});
});
И вот код сервера в VerifMain.aspx.vb
Partial Public Class _Default
Inherits Page
<WebMethod()> _
Public Shared Sub Lol()
//TO DO
End Sub
End Class
Итак, когда я пытаюсь вызвать этот метод, он переходит в функцию ошибки и выдает предупреждение «[object Объект]»
Я должен использовать jQuery, потому что там, где я работаю, не установлен Microsoft Ajax.
Мне действительно нужна помощь для этого, я не понимаю, что я делаю не так, и я застрял только с ie7, и почти все веб-сайты заблокированы.
Спасибо!
Хорошего дня!!
РЕДАКТИРОВАТЬ: Привет всем, спасибо за ваше время!
Я исправил это, удалив класс the partial.
итак, теперь это всего лишь статический веб-метод в коде сервера, и он работает.
<WebMethod()> _
Public Shared Sub Lol()
//TO DO
End Sub
Честно говоря, я не понимаю, как это работает
но спасибо вам за ваши быстрые ответы.
Это лучший веб-сайт, теперь я проведу здесь немного свободного времени 😉
Комментарии:
1. вы можете опубликовать найденное вами решение в качестве ответа на свой вопрос и пометить его как принятый ответ ! 🙂
Ответ №1:
Попробуйте вызвать этот метод вместо этого, просто чтобы протестировать его еще раз:
<WebMethod()> _
<ScriptMethod(ResponseFormat:=ResponseFormat.Json)> _
Public Shared Function GetDate() As String
Return Date.Now.ToString()
End Function
Замените URL на этот:
url: "/VerifMain.aspx/GetDate",
Ответ №2:
ASP.NET AJAX изменил JSON, возвращенный в версии 3.5. Вам необходимо получить доступ к d
свойству, см. http://encosia.com/never-worry-about-asp-net-ajaxs-d-again. Я не знаю, в чем ваша ошибка, но вы увидите ее, если измените код на приведенный ниже:
$(document).ready(function () {
//menu()
$("#btnImprimer").click(function () {
$.ajax({
type: "POST",
url: "/VerifMain.aspx/Lol",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
alert("Good");
},
error: function (data) {
alert(data.d);
}
});
});
});
Ответ №3:
Просто изучите сообщение:
error: function (msg) {
var i,s="";
for(i in msg) s = (s?"n":"") i ": " msg[i];
alert(s);
}