私の c# mvc4 アプリケーションには、Jquery で AJAX ポストを使用して ActionResult に渡したい 3 つのオブジェクトがあります。オブジェクトは、2 つの文字列とフォーム コレクションです。フォーム コレクションのみを渡すのに問題はありませんでしたが、3 つすべてを渡すための正しい構文を取得できないようです。これが私が試したことです:
$(document).ready(function () {
$('#ChangeName').click(function (e) {
var tdata = $('#form1').serialize();
var origname = $('#NameDiv').find('input[name="myName"]').first().val();
var newname = $('#NameDiv').find('input[name="updatedName"]').first().val();
$.ajax({
type: "POST",
data: {tdata + origname + newname},
url: "Home/ChangeName",
success: function (result) { success(result); }
});
});
data:
また、括弧の有無にかかわらず、セクション内の各変数名の後にコンマを試しました。どうすれば3つすべてを通過できますか?成功すると、デバッグ時に両方の文字列値が正しく入力されますが、値は ActionResult に表示されず、代わりに null が表示されます。また、これをデータの下に配置しようとしました: contentType: "application/x-www-form-urlencoded",
これも私のActionResultの始まりです:
public ActionResult ChangeName(string Name, string updatedName, FormCollection mCollection)