0

XHR を作成しましたが、サーバーからの応答も正しく取得しています。しかし、何らかの理由でコールバックが発生していません。助けてください。

function uploadDr(){
    var url = "UploadExcelServlet";     
    if (req != null) {
        try {
            req.open("GET", url, true);
        } catch (e) {
            alert(e);
        }
        req.onreadystatechange = callBk;
        req.setRequestHeader("Content-Type", "multipart/form-data");
        req.send();
    } else {
        alert("Null Request");
    }
}


function callBk(){
    if (req.readyState == 4){
        if (req.status == 200){
            alert(req.responseXml);
        } else {
            alert(req.statusText);
        }
    }
}
4

1 に答える 1

0

GET リクエストの場合、データは常に URL で渡されるため、「Content-Type」ヘッダーを設定する必要はありません。

また、次のように送信するリクエスト データを設定する必要があるかもしれません。

req.send(null);

readyState次に、コールバック関数でテストします。

function callBk(){
    console.log(req.readyState); // don't stop the script by using alert!
    // other stuff
}

( )readyStateと等しくないことを確認してください。0XMLHttpRequest.UNSENT

于 2012-12-08T08:39:17.560 に答える