我有一个脚本,它使用jQuery AJAX调用返回0-5之间的数字,只是用结果更改文本框的值。当脚本返回1-5时,这可以正常工作并相应地在文本框中打印结果。
但是,在脚本返回0的情况下,不会打印任何内容。我猜这是一个处理0的默认行为,但问题是0是我写的脚本的有效响应,我需要它在文本框中实际打印'0'。
我可以在必要时发布我的代码,但它是对PHP脚本的标准基本jQuery AJAX调用,它回显结果(0-5),然后使用AJAX响应更新文本框的值。
编辑:代码低于要求
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:感谢@FelixKling指出我脚本中的错误,我甚至都没有注意到存在。但是我仍然遇到0未被打印的问题。
答案 0 :(得分:0)
我建议在1-6之间返回一个数字并减去1以产生所需的结果。 会把它放在评论中,但我没有代表。