2015-04-27 4 views
0

Я пытаюсь использовать вызов AJAX для частичного просмотра при выборе переключателя. Я искал и пробовал, что, по-видимому, лучший подход с помощью комментариев к Stack. Когда я нажимаю на переключатель, у меня нет результата, в отладке я получаю код состояния: 500 Internal Server Error? Любая помощь будет отличной.AJAX вызов не действует как ожидалось

Частичный вид Имена:

_BOA.cshtml 
_TA.cshtml 
_MNB.cshtml 

Вид:

   <td class="radio-inline"> 
        @Html.RadioButton("bankSelect", "MNBConvert", false, new { @class = "radioMNB" }) MNB Conversion 
        @Html.RadioButton("bankSelect", "BOAConvert", false, new { @class = "radioBOA" }) BOA Conversion 
        @Html.RadioButton("bankSelect", "TAConvert", false, new { @class = "radioTA" }) TA Conversion 
       </td> 

Javascript:

<script src="~/Scripts/jquery-1.9.0.js"></script> 
    <script type="text/javascript"> 
     $(function() { 
      $("[name=bankSelect]").on('change', function() { 
       // var $radio = $(this); 
       var checked = $("input[name='bankSelect']:checked").val(); 

       $.ajax({ 
        url: '@Url.Action("GetBankToConvert", "Home")', 
        data: checked, 
        type: 'GET', 
        success: function (data) { 
         $("#renderPartialView").html(data); 
        } 
       }); 
      }); 
     }); 
    </script> 

Контроллер:

[HttpGet] 
     public ActionResult GetBankToConvert(string bankSelect) 
     { 
      if (bankSelect == "MNBConvert") 
      { 
       return PartialView("_MNB"); 
      } 
      else if (bankSelect == "BOAConvert") 
      { 
       return PartialView("_BOA"); 
      } 
      else 
      { 
       return PartialView("_TA"); 
      } 
     } 
+0

Есть журналы сервера? –

+0

Это не влияет ни на что, но вместо ActionResult вы можете изменить его на 'PartialViewResult'. И попытались ли вы установить точку останова или что-то на консоли? –

+0

@BrianWhite - Не звучать невежественно, но как я могу извлечь журнал сервера? –

ответ

4

Вы не отправляете пару ключ/значение в качестве данных, а только value.

Попробуйте

$.ajax({ 
    url: '@Url.Action("GetBankToConvert", "Home")', 
    data: {bankSelect: checked }, 
    type: 'GET', 
    success: function (data) { 
     $("#renderPartialView").html(data); 
    } 
}); 

Если вы сомневаетесь, проверьте фактический запрос в сетевой вкладке браузера Дев инструментов, чтобы увидеть именно то, что передается и принимается среди всех других компонентов запроса

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