아약스를 사용하여 내보기에서 내 응용 프로그램의 컨트롤러로 값을 보냅니다.아약스의 오류가 발생하지 않았습니다.
아약스 :
<script type="text/javascript">
$('#SendToController').on('click', function() {
sendToController();
return false;
});
function sendToController(){
var selectedM = $('#Month').val();
var chosenY = $('#Year').val();
var chosenC = $('#County').val();
//alert(chosenY);
$.ajax({
url: '/ALog/MReports/Generate',
data: { 'monthV' : selectedM, 'year' : chosenY, 'county' : chosenC },
type: 'GET',
cache: false,
success: function (data) {
$("body").html(data);
$('.dropdown-toggle').dropdown();
},
error: function() {
if (selectedM === "") {
alert("Error 1!");
}
else if (chosenY === "") {
alert("Error 2!");
}
else if (chosenC === "") {
alert("Error 3!");
}
}
});
}
</script>
지금, 나는 내가 위 아약스 코드의 값을 얻고 3 dropdownlists이 내 양식에. ajax 함수가 error
부분으로가는 유일한 시간은 chosenC
및/또는 selectedM
이 비어 있지만 chosenY
이 비어 있으면 여전히 success
이됩니다.
나는 내가 자바 스크립트와 올바른 값을 확인하고 보장하기가 비어 경우 중 하나 null
또는 빈 (""
) .. 나는 모두 시도했다 chosenY
의 값을 경고하고도 작업 ..
여기에 내가 chosenY
을 경고 할 때의 결과이다 그래서 나는 그것이 내가 .. 그 확인하고 있지만,이 경우에도 있기 때문에 문제가되지 않습니다 .. 빈 문자열라고 생각 것을에서 비어 있습니다. 아약스나요. thod는 이것을 success
으로 생각하고 있는데 error
이 아닙니다. 왜 그런가요?
도움을 주시면 감사하겠습니다.
왜 빈 응답이 오류가됩니까? – epascarello
오류/성공은 http 상태 코드를 기반으로합니다. 타격중인 서비스가 2xx OK 유형 응답 인 경우 '성공'으로 이동합니다. –
@epascarello 그 데이터가 없으면 결과는 빈 테이블이되기 때문입니다. 해당 필드가 필요합니다. –