すでにいくつかの類似の投稿があり、提案されたすべてのソリューションを試したが、まだ動作しません...コントローラ内で値を取得できません、常にnullです。以下はコードです。何か不足していますか?アクションパラメータがnullを返す
クライアント側のJavaScript
var arr = [];
$('.myForm').each(function() {
var ids = {
n:$('#name').val(),
c: $('#student_class').val(),
g: $('#gender').val(),
p: $('#phone').val()
}
arr.push(ids);
});
$.ajax({
url: "/Home/InsertStudent/",
type: "POST",
cache: false,
contentType: 'application/json',
datatype:"html",
data: JSON.stringify(arr),
success: function (result) {
alert("success");
// $(" ").html(result)
},
error: function() {
alert("error");
}
});
MVCコントローラ
public PartialViewResult InsertStudent(StudentData model)
{
return PartialView();
}
モデルクラス
public class StudentData
{
public int id { get; set; }
public string name { get; set; }
public string student_class{ get; set; }
public bool gender { get; set; }
public int phone { get; set; }
}
マイビュー
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="container">
<div class="row">
<div class="col-md-2">
<div><input type="button" value="Admin" id="admin" class="btn btn-default" onclick="Admin()" /></div>
</div>
<div class="col-md-2">
<div><input type="button" value="Student" id="student" class="btn btn-default" onclick="Student()" /></div>
</div>
<div class="col-md-8">
<div id="partial">
@*@{ Html.Partial("InsertStudent");}*@
</div>
</div>
</div>
</div>
}
StudentDataの種類は何です: は、JavaScriptで次のように変更しますか? – MstfAsan
StudentDataはモデルクラス名です。私が間違っていることをお勧めしますか?私はプログラミングに新しいです。 – anjali
あなたはサーバに配列を送信しています。実際にはどのサーバが単一のオブジェクトではないかのようです。 – MstfAsan