无法发送jQuery发布数据到MVC控制器
问题描述:
我试过了我可以在Google上找到的解决方案,但没有任何帮助。 我AJAX功能:无法发送jQuery发布数据到MVC控制器
$.ajax({
type: "post",
url: apiEndpoint + "/CreateExercise",
data: JSON.stringify(data),
datatype: "json",
contentType: "application/json",
success: function (result) {
console.log(result);
},
error: function (xhr, status, p3, p4) {
var err = "Error " + " " + status + " " + p3 + " " + p4;
if (xhr.responseText && xhr.responseText[0] === "{") {
err = JSON.parse(xhr.responseText).Message;
}
console.log(err);
}
});
MVC控制器:
public ActionResult CreateExercise(string sessionId, Exercise ExerciseCreateInfo)
数据,我想送:
data.sessionId = sessionId;
data.ExerciseCreateInfo = {};
data.ExerciseCreateInfo.IsVisible = true;
data.ExerciseCreateInfo.SimilarityNorm = $("#numSimilarityScore").val();
data.ExerciseCreateInfo.TypeId = $("#selectTaskType option:selected").val();
data.ExerciseCreateInfo.Name = $("#textTaskName").val();
data.ExerciseCreateInfo.Difficulty = $("#numDifficulty").val();
data.ExerciseCreateInfo.MarkPoints = $("#numPoints").val();
data.ExerciseCreateInfo.Question = tinyMCE.get("editorTask").getContent();
data.ExerciseCreateInfo.Hint = tinyMCE.get("editorHint").getContent();
data.ExerciseCreateInfo.Explanation = tinyMCE.get("editorExpenation").getContent();
data.ExerciseCreateInfo.Fields = {};
答
对不起,一个人,是谁写的MVC控制器使用了错误的命名空间。现在一切都很好。感谢帮助。
答
您可以发送数据以多种方式控制器:该样品中 可以发送数据与3的方式来位指示:
- Ajax.BeginForm
- 型号
- 视图模型
- 阿贾克斯jquery
- FormCollection
- 定义输入
- ...
你得到什么样的错误? – br4d
我可以在浏览器控制台中看到我的数据,但在服务器端,一切都为空,除了'sessionId' – ReasonX7
ExerciseCreateInfo也是您拥有的类型的名称?你能发布涉及的对象(如练习和任何子对象)吗? – br4d