質問

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

私は、応答は(文字列:「OK」、「NOK」または「ほとんど」送信されたパラメータに依存する)正しいサーバースクリプトによって送信された「結果」の値をチェックします。しかし、いくつかの理由のためにスイッチが常にデフォルトの条件を評価します!私はここで何をしないのです... switch文の前に空の文字列と「結果」を連結しようとしたが、ない運?

役に立ちましたか?

解決

おそらく結果は、改行が含まれているため。以下のようなもので、それをトリミングしてみます:

var result = response.responseText;
result = result.replace(/^[\s\r\n]+|[\s\r\n]+$/g, "");
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top