Member 13814026 Ответов: 1

Как можно получить доступ к данным для служб с помощью j query ajax в MVC ?


Когда я вызываю сервисы в посте j query ajax в mvc ?Для этого я проверяю,чтобы передать какой-то идентификатор,значение поступает в контроллер или нет, но показывает, что значение равно нулю в точке останова ? Дал мне несколько хороших проводников к моему коду .

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

Код контроллера:---
[HttpPost]
              public JsonResult Filters(string id)
               {
               var sd= id;
                return Json(sd, JsonRequestBehavior.AllowGet);
                }


Код представления:---

<script src="~/Scripts/jquery-1.10.2.min.js"></script>
  <script>
    $(document).ready(function ()
    {
            $('#rating-5').click(function ()
            {
              alert($('#rating-5').attr("value"));
              var fe = $('#rating-5').val("5");
                 alert(fe);

                 $.ajax
                     ({
                         url: '/Home/Filters',
                         // url:'/Home/Rating',
                         //contentType: 'application/json; charset=utf-8',
                         type: 'POST',
                         data: { sdsd: $('#rating-5').attr("value") },
                         dataType: 'json',
                         success: function (result) {
                             alert(result);
                             console.log(result);

                         },
                         error: function (status)
                         {
                             alert(status);
                         }
                     });
            });
        });
   
</script>

<pre><body>

               <div class="widget-sidebar start-rating-sidebar">
                    <h4 class="title-sidebar">Star rating</h4>
                     <ul class="widget-rate">
                     <li>
               <div class="radio-checkbox">
                      <input id="rating-5" type="checkbox" class="checkbox">
                      <label for="rating-5"></label>
               </div>
               <div class="group-star">
                   
                   
                   
                  
                 
               </div>5 Stars <span>12</span>
                        </li>
                         <li>
               <div class="radio-checkbox">
                    <input id="rating-4" type="checkbox" class="checkbox">
                    <label for="rating-4"></label>
               </div>
               <div class="group-star">
                 
                  
                 
                
             </div>4 Stars <span>12</span></li>
                   <li>
             <div class="radio-checkbox">
                  <input id="rating-3" type="checkbox" class="checkbox">
                   <label for="rating-3"></label>
             </div>
             <div class="group-star">
              
               
              
            </div>3 Stars <span>12</span>
                  </li>
                   <li>
            <div class="radio-checkbox">
              <input id="rating-2" type="checkbox" class="checkbox">
                 <label for="rating-2"></label>
             </div>
             <div class="group-star">
                
               
             </div>2 Stars <span>12</span>
                     </li>
                     <li>
             <div class="radio-checkbox">
               <input id="rating-1" type="checkbox" class="checkbox">
                  <label for="rating-1"></label>
              </div>
             <div class="group-star">
              
            </div>1 Stars <span>12</span>
               </li>
               <li>
            <div class="radio-checkbox">
              <input id="rating-6" type="checkbox" class="checkbox">
              <label for="rating-6"></label>
            </div>
          <div class="group-star">
          
      </div>Not Rated <span>12</span>
                 </li>
                </ul>
               </div>
</body>


Проблемы заключаются в следующем:-при нажатии флажка значение 5 отображается в поле alter.Но в значения контроллер показывает нуль, что ли ?

1 Ответов

Рейтинг:
2

Karthik_Mahalingam

пробовать

$('#rating-5').click(function () {
          alert($('#rating-5').prop("checked"));
          $.ajax
              ({
                  url: '/Home/Filters',
                  type: 'POST',
                  data: { id: $('#rating-5').prop("checked") },
                  dataType: 'json',
                  success: function (result) {
                      alert(result);
                      console.log(result);
                  },
                  error: function (status) {
                      alert(status);
                  }
              });
      });


Имя аргумента в методе контроллера и свойстве ajax "data" должно быть одинаковым, в вашем случае это так "id" и "sdsd"
Чтобы получить значение из флажка используйте "checked" собственность.


Member 13823448

Спасибо тебе

Karthik_Mahalingam

добро пожаловать

Member 13823448

Сэр, как я могу получить данные об отелях только на одну ночь в зависимости от ценового диапазона, используя сервисы WebApi Jquery Ajax в Mvc.

Karthik_Mahalingam

напишите запрос с условиями как одна ночь и добавьте цену между условиями.