나는 jQuery AJAX 호출을 사용하여 0-5 사이의 숫자를 반환하는 스크립트를 가지고 있으며 단순히 결과의 텍스트 상자 값을 변경합니다. 스크립트가 1-5를 반환하면 제대로 작동하고 그에 따라 텍스트 상자에 결과가 인쇄됩니다.jQuery로 0의 AJAX 응답 처리하기
그러나 스크립트가 0을 반환하는 경우 아무 것도 인쇄되지 않습니다. 나는 이것이 0을 다루기위한 기본 행동이라고 추측하고 있지만, 문제는 0이 내가 쓰고있는 스크립트에 대한 유효한 응답이고 실제로는 텍스트 상자에 '0'을 인쇄해야합니다.
필요한 경우 내 코드를 게시 할 수 있지만 결과 (0-5)를 나타내는 PHP 스크립트에 대한 기본 기본 jQuery AJAX 호출이며 AJAX 응답을 사용하여 텍스트 상자의 값이 업데이트됩니다.
편집 :조차 통보가 존재 내가 한 내 스크립트에 버그를 지적 @FelixKling에 감사 :
function fetchEWSSScore(input,category) {
$.ajax({
type: "POST",
url: "EWSSTriggerLevel.php",
data: "input=" + input + "&category=" + category,
async: true,
success: function(msg){
EWSS_Score = msg;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
EWSS_Score = 'Invalid';
alert(" Status: " + textStatus + "\n Error message: "+ errorThrown);
}
});
if (isNaN(EWSS_Score)) {
EWSS_Score = 'Invalid';
alert("An invalid response was given while attempting to fetch EWSS Score.");
return false;
} else {
return EWSS_Score;
}
}
function calculateEWSSWeightedScore(input,category,weighted) {
var EWSSScore = fetchEWSSScore(input,category);
$(weighted).val(EWSSScore);
}
$('#heartRate').change(function() {
var category = "HR";
var input = $(this).val();
calculateEWSSWeightedScore(input,category,'#heartRateWeighted');
});
편집 2를 요청하는 코드는 다음과 같습니다. 그러나 여전히 인쇄되지 않는 0 문제가 있습니다.
예, 코드를 게시하십시오. –
결과를 문자열로 변환 할 수 있습니다 ... 그렇습니다. 일부 코드는 도움이 될 것입니다 – Brewal
javascript는 "false"결과로 처리합니까? json 내부로 반환 : json_encode ({ "result": "0"}); – IdanHen