2015-01-06 4 views
-3

Имейте это Js АЯКС метод:Отправить POST для контроллера метод C# + AJAX

$.ajax({ 
    type: "POST", 
    url: "/Mycontroller/MyMethod", 
    data: { Id: '1' }, 
    success: function (data) { 
    if (data.IsSuccess == true) { 
     console.log('All OK!'); 
     } 
    } 
}); 

И этот метод в моем контроллере:

[HttpPost] 
public ActionResult MyMethod(int Id) 
{ 
    .... 
    return Json(new { IsSuccess = true} 
} 

Но, когда я использую отладчик в Visual Studio, он ДОН 'переместите меня в код console.log.

Я не могу понять, почему код не работает.

p.s. работа сценария, когда была нажата кнопка

+1

Вы возвращаете 'IsSuccess' как' fal se'. и вы ожидаете, что выражение if будет оценено верно? –

+0

это missclick, теперь я исправляю и код не работает – user2508630

+1

Является ли сообщение зарегистрированным в консоли браузера? Можете ли вы ударить эту точку останова в средствах отладки JavaScript вашего браузера? –

ответ

1

Попробуйте это:

$.ajax({ 
     url: 'PUT_YOUR_URL_HERE', 
     dataType: "json", 
     type: "POST", 
     contentType: 'application/json; charset=utf-8', 
     data: JSON.stringify({ Id: 1 }), 
     async: true, // Or false   
     cache: false, 
     success: function (data) { 
      //do something 
      } 

     }, 
     error: function (xhr) { 
      alert('error'); 
     } 
    }) 
  • , если я не ошибаюсь - MyMethod(int Id) - это Id - его GET Parameter

Если вам нужно отправить в POST - так писать, как :

Смежные вопросы