-1
을이되어 사용 컨트롤러로보기에서 두 JSON 값을 보내 : 이것은 내 액션 코드가어떻게 내 스크립트를 EF
$.fn.serializeObject = function() {
var o = {};
var a = this.serializeArray();
$.each(a, function() {
if (o[this.name] !== undefined) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
function btnadHocSave() {
debugger
var lv_header = $("#Header").serializeObject(); // this is header <fieldset> tag
var lv_detail = $("#SubmitMachine").serializeObject(); // this is detail <fieldset> tag
$.ajax({
type: "POST",
url: '@Url.Action("UpdateMachine")',
contentType: "application/json",
dataType: "JSON",
data: {
myheader: lv_header,
mydetail: lv_detail
},
cache: false,
success: function (data) {
alert("Success!..");
},
error: function (xhr, ajaxOptions, thrownError) {
alert(thrownError);
}
})
}
입니다. PMAllotmentEntry
및 PMAllotmentDetailEntry
모델은 다음과 같습니다
public ActionResult UpdateMachine(PMAllotmentEntry myheader, PMAllotmentDetailEntry mydetail)
{
return View();
}
이제 내 문제는 내가보기에서 컨트롤러에 값을 얻을 수 아니에요. JSON.stringify
도 시도했지만 사용하지 않았습니다.
단일 JSON 값을 전달하면 작동합니다.
나는 모든 가능성을 시험해 보았습니다. 당신도 말했지만 그대로 사용하지 않았습니까? 마침내 나는 다음과 같이했다. 두 개의 JSON 값을 얻었지만 여전히 문제에 직면 해 있습니다. JSON은 첫 번째 필드 값이 첫 번째 JSON 값과 함께 나오기 때문에 문제가 있습니다.
function btnadHocSave() {
debugger
var lv_header = $("#Header").serialize(); // this is header <fieldset>
var lv_detail = $("#SubmitMachine").serialize();
$.ajax(
{
type: "GET",
url: '/PMAllotments/UpdateMachine',
contentType: "application/json",
dataType: "JSON",
data: lv_header + ',' + lv_detail,
success: function (data) {
alert("Success!..");
debugger
$("#adHocAdd40").modal("hide");
},
error: function (xhr, ajaxOptions, thrownError) {
alert(thrownError);
}
})
}
를 다음과 같이 내 모델 : JSON.stringify ({myheader : lv_header, mydetail : lv_detail}),'그런데 왜 당신이 것을 사용하는' serializeObject()'함수 ('bool' 속성을 갖자 마자 실패합니다)와 같은 데이터를 보내면 뷰가 올바르게 생성되지 않는다는 것을 의미합니다. –
가장 좋은 방법은 새 클래스를 만들고 그 "PMAllotmentEntry myheader, PMAllotmentDetailEntry mydetail"클래스는 하나의 클래스에 속합니다. – Floxy
편집에 관해서는'contentType' 옵션과'data : lv_header + '&'+ lv_detail,'(그러나보기가 올바르게 생성되었다고 가정합니다. 그러나 그 중 아무 것도 표시하지 않았습니다. 이 코드는 그렇지 않다는 것을 나타냅니다) –