mvc 버튼 클릭 이벤트에서 컨트롤러 작업 메서드를 호출하기 위해 ajax를 사용하고 있습니다. 제어기 동작 방법은 실패한 사용자에게 오류를 통보해야하는 검증 로직을 가지고있다. 나는 MVC에서 이것을 어떻게 달성 할 수있을 지 확신하지 못한다. 컨트롤러에서 ajax success 이벤트에 오류 메시지를 보낼 수있는 방법이 있습니까?ajax 호출에서 mvc보기에 오류 메시지를 전달하는 방법
Controller Action Method
[AcceptVerbs(HttpVerbs.Post)]
public ViewResult Index(ProfileSnapshotRequestModel pspm)
{
// Do something
return Json(new { success = true });
}
MVC보기 버튼 난에 원하는 데이터를 반환 내가 조치 결과 같은 컨트롤러 액션 반환 형식을 변경하여 해결 할 수 있었다
$("#copyData").click(function() {
var selectedRowId = $('#ServersWS').jqGrid('getGridParam', 'selrow');
var rowData = jQuery("#ServersWS").jqGrid('getRowData', selectedRowId);
$("#MainDiv").prop('disabled', true);
var url = '@Url.Action("Index")';
HideElements();
$.ajax({
url: url,
data: {
BaseEnvtId: $("#SelectedEnvironmentID").val(),
BaseVersionId: $("#SelectedVersionID").val(),
BaseProfileId: rowData['ProfileId'],
NewEnvtId: $("#SelectedEnvironmentID2").val(),
NewVersionId: $("#SelectedVersionID2").val(),
NewProfileId: $("#SelectedProfileID2").val(),
},
type: 'POST',
datatype: 'json',
success: function(data) {
document.getElementById('displaySuccess').style.display = 'block';
$("#ProfileCopyDiv").prop('disabled', true);
$("#MainDiv").prop('disabled', false);
},
error: function() { alert('something bad happened'); }
});
});
컨트롤러 동작 반환 형식을 동작 결과로 변경하여 해결할 수 있으며 다음과 같은 작업을 수행 할 수 있습니다. 반환 값 Json (new {success = true}); – user845405