我需要使用switch语句评估Ajax.Request(使用原型)的响应:
new Ajax.Request('http://localhost/somescript.php',{method:'post',parameters:params,onSuccess:
function(response)
{
var result = response.responseText;
switch (result)
{
case "ok":
//do something...
break;
case "nok":
//do something...
break;
case "almost":
//do something...
break;
default:
//do something...
}
}
});
如果我检查服务器脚本发送的“result”的值,则响应是正确的(字符串:“ok”,“nok”或“几乎”,具体取决于发送的参数)。但由于某种原因,开关总是评估默认条件!我尝试在switch语句之前将“result”与空字符串连接起来,但没有运气......我在这里缺少什么?
答案 0 :(得分:0)
可能是因为结果包含换行符。尝试用以下方法修剪它:
var result = response.responseText;
result = result.replace(/^[\s\r\n]+|[\s\r\n]+$/g, "");