Asp.Net Mvc POST方法不发送字符串
Ajax不会向控制器发送任何字符串。
这是我的function:
$(function () { $('#btnAnswer').click(function () { var code = $('#Answer').val(); $.ajax({ url: '@Url.Action("CheckAnswer", "Home")', type: "POST", data: code , datatype: "text", success: function (resultFromFunct) { $("#resultsBox").append(resultFromFunct); } }); $('#Answer').val(''); }); });
这是我的控制器:
[HttpPost] public string CheckAnswer(string answer)/ { game.LogUserAnswer(Request.Cookies["user"].Value, answer); return String.Format("{0}: {1}
", Request.Cookies["user"].Value, game.UserGuess(answer)); }
Ajax正确进入CheckAnswer方法,但答案始终为null。 我已经尝试过堆栈中的其他示例,例如Asp.Net Mvc JQuery ajax输入参数为null但总是得到null结果。 你对这个事业有什么看法吗?
在请求中将请求参数更改为data: { answer: code }
。 它可能无法将code
与您的操作上的参数匹配。
$(function () { $('#btnAnswer').click(function () { var code = $('#Answer').val(); $.ajax({ url: '@Url.Action("CheckAnswer", "Home")', type: "POST", data: { answer: code }, datatype: "text", success: function (resultFromFunct) { $("#resultsBox").append(resultFromFunct); } }); $('#Answer').val(''); }); });