$.post()
整数値の配列をコントローラーに投稿するために使用しています。
配列を作成する方法は次のとおりです。
var ratings = [];
$('#ratings input[name=newReviewRatings]').each(function () {
ratings.push($(this).val());
});
コントローラーに投稿する方法は次のとおりです。
$.post('@Url.Action("CreateReview", "Provider")',
{
id: providerId,
ratings: ratings,
comment: comment
});
投稿されるフォーム データは次のとおりです。
{id=437baf29-4196-4966-88de-a8fde87ef68d&ratings%5b%5d=1&ratings%5b%5d=2&ratings%5b%5d=3&ratings%5b%5d=4&ratings%5b%5d=5&comment=コメント}
そして、これが私のコントローラーの署名です:
public ActionResult CreateReview(Guid id, int[] ratings, string comment)
{
// ....
}
それは正しいように思えますが、ratings
常に null です。誰かが私が見逃しているものを見ることができますか?
私も試しstring[] ratings
てみましたが、同じ結果が得られました。を使用して配列を渡すという提案も見ましたが、JSON.stringify(ratings)
それも役に立たなかったようです。