2016-10-12 13 views
-1

Screen shot of the postMVC - (特別MVCフォーマットと同じ名前を持つ要素を掲示)

私は、コレクションにコントロールをリストの読み方を、サーバーに同じ名前を持つ複数の要素を投稿したいです名前の名前は、まだデータにアクセスできないブログにある特殊なフォーマットでフォーマットされています。

<input type="text" class="inputs" name="[1].SpecificationTitle" />        
<input type="text" class="inputs" name="[1].SpecificationDescription" /> 

<input type="text" class="inputs" name="[2].SpecificationTitle" />        
<input type="text" class="inputs" name="[2].SpecificationDescription" /> 

読むあなたがデータを取得し、サーバ側にそれを投稿するjqueryの/アヤックスを使用する場合、どのよう

[HttpPost] 
    public ActionResult addBuyOnlinepostA(ICollection<SpecificationDetails> SpecificationDetails, FormCollection Collection) 
    { 
    } 

    public class SpecificationDetails 
    { 
     public string SpecificationTitle { get; set; } 
     public string SpecificationDescription { get; set; } 
    } 
+0

インデクサはゼロを開始し、連続して)(と)私は後でこれをテストします –

+0

@StephenMueckeを無意味 'FormCollection Collection'パラメータを削除する必要があり、私は修正するために、一時的な方法を使用しましたこの。 –

答えて

0

<script> 
$(document).ready(function() { 
    $("#submit").click(function() { 

     data = $(".inputs").map(function() { return $(this).val();}); 
     var data2 = data.toArray(); 
     alert(data2); 
     $.ajax({ 
       type: "POST", 
      url: "@Url.Action("Action", "Controller")", 
      traditional: true, 
      data: {Data:data2 }, 
      success: successFunc, 
      error: errorFunc 
      }); 

     function successFunc(data) { 

      alert("success"); 
     } 
     function errorFunc(data) { 
      alert("error"); 
     } 
    }); 
}); 

<input type="text" class="inputs" name="[1].SpecificationTitle" /> 
<input type="text" class="inputs" name="[1].SpecificationDescription" /> 
<input type="text" class="inputs" name="[2].SpecificationTitle" /> 
<input type="text" class="inputs" name="[2].SpecificationDescription" /> 

<input type="button" id="submit" value="submit"/>` 
+0

@Sudhashnu私は可能な限り最小限のコードを書いてほしい、私の方法は、非常に少ない労力でサーバー側の検証などを排除するだろう –

関連する問題