我需要评估的Ajax.Request(使用原型)的与switch语句的响应:

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...
        }
    }
    });

如果我检查“的结果”由服务器脚本发送的值的响应是正确的(一个字符串:“OK”,“NOK”或“几乎”,这取决于参数发送)。但由于某些原因,开关始终计算的默认状态!我试图串连“结果”与switch语句前一个空字符串,但没有运气......我在想什么吗?

有帮助吗?

解决方案

大概是因为结果包含换行符。尝试用类似修剪它:

var result = response.responseText;
result = result.replace(/^[\s\r\n]+|[\s\r\n]+$/g, "");
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top