ajax에 약간의 문제가 있습니다. 그러니 먼저 내 행동을 보여 줄거야.Ajax가 MVC 컨트롤러로 양식 ID를 보낼 수 없습니다.
형태 :
public JsonResult AddQuestion(SurveyQuestion model, int id)
{
SurveyQuestion question = new SurveyQuestion();
question.Body = model.Body;
question.CreatedOn = DateTime.Now;
question.ModifiedOn = DateTime.Now;
question.Priority = 0;
question.SurveyId = id;
question.Text = model.Text;
question.Type = QuestionType.Text;
_db.SurveyQuestions.Add(question);
_db.SaveChanges();
return Json(question, JsonRequestBehavior.AllowGet);
}
나는 코드의 모든 부분을 작성하지 않았다 :
$("#btnSubmit").click(function() {
var data = $('#QuestionForm').serialize();
$.ajax({
type: "POST",
url: "/Survey/AddQuestion",
data: {data, @Model.Survey.Id},
success: function() {
$("#AddQuestion").modal("hide");
//alert("Survey Added");
location.reload();
}
})
})
가 여기 내 컨트롤러 액션의 :
<form id="QuestionForm">
@Html.TextBoxFor(model => model.Body, new { @class = "form-control", @placeholder = "Body" })
@Html.TextBoxFor(model => model.Text, new { @class = "form-control", @placeholder = "Text" })
</form>
것은 여기 내 스크립트와 Ajax 코드의 , 그 중 일부는 나중에 코딩 할 것이기 때문에 하드 코드 된 것입니다. 그러나 문제는 두 가지를 보내는 것입니다. ID를 보내고 컨트롤러에서 ID를 삭제하지 않으면 직렬화 된 모델을 잘 보냅니다. 그러나 둘 다 보내면 ID를 가져 오지만 그에게 보낸 모델은 가져 오지 않습니다 (텍스트 및 본문 null의 경우) 이 문제를 어떻게 해결할 수 있습니까?
당신이 – Krishjs
할 수있는 쿼리 문자열로 ID를 전달할 수 없습니다 게시물에 여러 매개 변수를 전달,이 시도하거나 쿼리 문자열을 사용하여 전달할 수 있습니다 그걸 대답으로 붙여주세요. – HighSepton
해 주셔서 감사합니다. FromUri – Krishjs