2013-03-25 204 views
2

在這裏我有問題:JSON數據列表,陣列

OneCar - >時,我只取一個參數,我可以看到價值,一切都OK

但是當我嘗試採取ListCar1的參數列表和ListCar2我只能看到null

我相信這是一個小錯誤,但我不知道如何解決它。

[HttpPost] 
     public JsonResult DodajTematSave(string OneCar, string[] ListCar1, List<string> ListCar2) 
     { 
     } 

這裏的Json行動

<script type="text/javascript"> 

    function Save() { 

     var mycars = new Array() 
     $("[name^='CarString']").each(function() { 
      mycars.push(this.value); 
     }); 

     $.ajax({ 
      url: '@Url.Action("DodajTematSave", "StronaGlowna")', 
      dataType: "json", 
      data: { 
       OneCar: mycars[0] 
       ListCar1: mycars 
       ListCar2: mycars 
      }, 
      type: "POST", 
      async: false, 
      error: function() { 
      }, 
      success: function (data) { 
       if (data.Success) { 
        alert('success'); 
       } 

      } 
     }); 
    } 

</script> 

正確答案:

<script type="text/javascript"> 

    function Save() { 

     var mycars = new Array() 
     $("[name^='CarString']").each(function() { 
      mycars.push(this.value); 
     }); 

     $.ajax({ 
      url: '@Url.Action("DodajTematSave", "StronaGlowna")', 
      dataType: "json", 
      data: { 
       OneCar: mycars[0] 
       ListCar1: mycars 
       ListCar2: mycars 
      }, 
      type: "POST", 
      traditional: true, 
      async: false, 
      error: function() { 
      }, 
      success: function (data) { 
       if (data.Success) { 
        alert('success'); 
       } 

      } 
     }); 
    } 

</script> 

回答

2

您需要的traditional: true參數添加到$.ajax通話。詳細信息可在此jQuery forum thread或此answer中找到。

+0

很好的答案,只有這個小東西,並沒關係:)非常感謝:) – 2013-03-25 12:14:27