0 امتیاز
قبل در برنامه نویسی توسط (20 امتیاز)
ویرایش شده قبل توسط

من میخوام یه سری فیلترهارو توسط ajax بفرستم سمت یه اکشن ولی سمت اکشن به مشکل برخوردم من کدهامو میزارم اگه لطف کنین و چک کنید و مشکل رو بگین ممنون میشم

 

$(document).ready(function () {
 
 
 
       $("#pagesidbar input[type=checkbox]").click(function () {
 
           var data = {};
 
           data.ValueId = new Array();
           data.CategoryId = new Array();
 
           var ValuesId = new Array();
           var CategoriesId = new Array();
 
 
           data.CatID=$('#CatID').val()
           data.Max = $('#MaxPrice').val();
           data.Min = $('#MinPrice').val();
           data.Page = $('#Pagings').val();
 
           data.ParentID = $('#ParentID').val();
 
           
 
           ValuesId = find.getFilter();
           CategoriesId = find.getCategoryId();
                
 
 
           //for (var i = 0; i < ValuesId.length; i++) {
 
 
           //    data.ValueId[i] = parseInt(ValuesId[i]);
           //    alert(data.ValueId[i]);
           //}
 
 
           //for (var i = 0; i < ValuesId.length; i++) {
 
 
           //    data.CategoryId[i] = parseInt(CategoriesId[i]);
           //}
 
 
           data.ValueId = ValuesId;
           data.CategoryId = CategoriesId;
 
          
 
 
           //for (var i = 0; i < counter; i++) {
           //    alert(data.ValueId[i]);
           //}
 
          
         SendData.getData(data);
 
           
 
       });
   });
 
 
 
 
 
 
   var SendData = (function () {
 
       var url = '@Url.Action("FindProduct", "Home")';
 
      
 
        
       $(document).ajaxError(function (event, xhr) {
           alert(xhr.status + ":" + xhr.statusText);
       });
 
 
       var getData = function (data) {
 
           var Filters = {
              " CategoryId":data.CategoryId,
              "ValueId": data.ValueId,
               "CatID": data.CatID,
               "Max": data.Max,
               "Min": data.Min,
               "Page": data.Page,
               "ParentID":data.ParentID
 
           };
 
             
           //jQuery.ajaxSettings.traditional = true;
           return $.ajax(url, {type:"POST", data:data});
 
       };
 
       return {
           getData: getData
       };
 
   }());
 

کد بالا مربوط میشه به گرفتن فیلترها توسط جی کوئری!!! البته متد getFilter یه آرایه از value هارو برمیگردونه که کدشو زیر میزارم فقط قسمت مربوطه رو گذاشتم

 

var getFilter = function () {
       values = new Array();
       counter = 0;
       
       $("#filters-div input[type=checkbox]").each(function () {
           var $this = $(this);
 
           if ($this.is(':checked')) {
 
               
               values[counter++] = parseInt($this.val());
 
           }
       });
       return values;
 
   };

تا اینجا مشکلی ندارم ولی وقتی سمت action  میخوام این ValueId هارو بگیرم یه همچین مشکلی دارم

همش مینوسه {string[1]} 

اینا چندتا چک باکس هستند که هرکدوم تیکشون خورده شده باشه value آنها توسط همون متد  getFilter ریخته میشه تو یه آرایه!! منم هرچندتاشو کلیک میکنم همینو مینویسه

سوالات مشابه

+1 امتیاز
1 پاسخ 344 بازدید
+1 امتیاز
1 پاسخ 469 بازدید
+1 امتیاز
0 پاسخ 755 بازدید
0 امتیاز
0 پاسخ 220 بازدید
0 امتیاز
1 پاسخ 344 بازدید
0 امتیاز
1 پاسخ 277 بازدید
سوال شده 7 سال قبل در برنامه نویسی توسط A.ahmadisalem (0 امتیاز)
0 امتیاز
2 پاسخ 828 بازدید
سوال شده 9 سال قبل در برنامه نویسی توسط aminiS (479 امتیاز)
0 امتیاز
0 پاسخ 643 بازدید
...