dilzz Ответов: 1

Вызов Ajax не запускается ASP.NET


Уважаемые Эксперты,

У меня вопрос по поводу использования после AJAX-вызов, используя код MapPageRoute в мировой.эйсакс .

Я покажу вам несколько примеров, которые я использовал.

В глобальном файле.asax код выглядит так.

protected void Application_Start(object sender, EventArgs e)
       {

           RouteTable.Routes.MapPageRoute("ICPDR", "InitialClaimReport", "~/Accounts/PC/Initial_Claim_Report.aspx");

       }




А в Js-файле выглядит вот так.


$.ajax({
       "dataType": 'json',
       "contentType": "application/json; charset=utf-8",
       "type": "POST",
       "url": "InitialClaimReport/populate_User/",
       "data": {},
       "success":
           function (json) {

               $('#ddl_User').find('option').remove();
               $("#ddl_User").append('<option value="0"></option>');
               $.each(JSON.parse(json.d).list, function (key, val) {

                   $("#ddl_User").append('<option value="' + val.ID + '">' + val.User+ '</option>');


               });

           },
       "error": function (xhr, status, p3, p4) {
           var err = "Error " + " " + status + " " + p3 + " " + p4;
           if (xhr.responseText && xhr.responseText[0] == "{")
               err = JSON.parse(xhr.responseText).message;
           alert(err);
       }
   });



И в коде позади


[WebMethod(EnableSession = true)]       
        public static string populate_User()
        {

            try
            {
                BLL_Users objusr_BLL = new BLL_Users();                
                return objpractice_BLL.Fetch_UserList();

            }
            catch (Exception ex)
            {
                
                throw;
            }



        }



Я использовал приведенный выше код, но мой Ajax-вызов не Уокинг.

Не могли бы вы помочь мне использовать вызов ajax при использовании маршрутизации в asp.net (не MVC)

Спасибо
Дилип..

Что я уже пробовал:

Я попробовал приведенный выше код, и он не работает. пожалуйста, посоветуйте мне, что не так.
Когда я попробовал, то получил ошибку ниже...


POST http://localhost:7777/InitialClaimPendingDetailReport/populate_practice 404 (Not Found)

Member 10398773

Какую ошибку вы получаете на своей консоли?Откройте mozzila или chrome и проверьте ошибку, которая отображается на консоли.

dilzz

Я получил ошибку ниже..

Пост http://localhost:7777/InitialClaimReport/populate_User 404 (не найдено)

Member 10398773

Вы получаете доступ к нему через GET, и именно поэтому вы получаете 404 .Украсьте свой метод, как показано ниже, атрибутом HttpPost

[HttpPost]
[WebMethod(EnableSession = true)]
общественности статической строки populate_User()
{

пробовать
{
BLL_Users objusr_BLL = новые BLL_Users();
возврат objpractice_BLL. Fetch_UserList();

}
поймать (исключение бывший)
{

бросать;
}



}

1 Ответов

Рейтинг:
0

koklimabc

In markup view/fontend page, Have you put every your $.ajax inside $(document).ready(function(){
$.ajax({});
}) for automatic calling or event binding to control that said.

one more things i check out this is mistakes
 
url: "InitialClaimReport/populate_User",       

Do not put "" (double quotes) to enclosed 'url' for method naming convention in ajax calling, and there should be not "/" after "populate_User"


- Не используйте "статический" при вызове ajax из fontend page / markup view, он не будет работать по моему опыту. Лучше связывать эти кодировки в SVC-файл для работы.

[WebMethod]
[WebInvoke(Method= "POST", ResponseFormat = WebMessageFormat.Json)]
public string populate_User()
        {
 
            try
            {
                BLL_Users objusr_BLL = new BLL_Users();                
                return objpractice_BLL.Fetch_UserList();
 
            }
            catch (Exception ex)
            {
                
                throw;
            }
        }