0
I'm using XMLHttpRequest POST to send data to a jsp. But the jsp is not invoked. Here is my code.

ボタンのクリックでJSメソッドが呼び出される

<form action="">
<div><input type="button" value="POST DATA"
    onclick=test();
/></div></form>

http POST を実行する JS メソッド -

<script>
function test() {
        var xmlHttpRequest = new ActiveXObject('Msxml2.XMLHTTP');
        xmlHttpRequest.open("post",
                "http://localhost:4502/content/myTest.html", true);
        xmlHttpRequest.setRequestHeader("Content-Type",
                "application/x-www-form-urlencoded");
        xmlHttpRequest.onreadystatechange = function() {
            getResult(xmlHttpRequest)
        };
        try {
            xmlHttpRequest.send("username=john");
        } catch (e) {
            alert("error" + e);
        }
    }
    function getResult(xmlHttpRequest) {
        if (xmlHttpRequest.readyState == 4) {
            if (xmlHttpRequest.status == 200) {
                alert("ok");
            } else {
                alert("error" + xmlHttpRequest.status);
            }
        }
    }
</script>

POST リクエストをテキスト ファイルに書き込む myTest.jsp -

  <%
    FileOutputStream fos = new FileOutputStream("D:/test.txt");
    PrintWriter pw = new PrintWriter(fos);
    pw.println(request.getParameter("username"));
    %>

myTest.jsp は呼び出されませんが、OK アラートが表示されます。post の代わりに http get を試して、パラメータを uri に追加すると、動作します。私はIE8を使用しています。

助けてください。

4

1 に答える 1

0

投稿にjQueryを使用してみましたか?

jQueryライブラリを使用する前に、ページに含める必要があります。

jQueryを使用すると、コードのクロスブラウザー互換性も高まり、そのリンクの例を簡単にたどることができます。リクエストをさらに制御したい場合は、他のjQueryオプションもあります。私はそれを強くお勧めします-このようなタスクや他の多くのタスクでは、それはあなたの人生をよりシンプルにし、あなたのコーディングをより楽しくします!

于 2012-06-25T22:53:45.500 に答える