-1

<form>含むページがあり<textarea>、入力されたテキストを Ajax を使用して送信したいと考えています。テキストは PHP ページに移動し、そこで SQL データベースに挿入します。

私が直面している問題は、+または&に書き込むたびに<textarea>、JavaScript がそれらを URL 内の特殊文字として扱うことです。どうすればそれらを逃れることができますか?

function getMessageResponse() {
    var xmlHttp;

    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    } catch(e) {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
            try {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch(e) {
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }

    xmlHttp.onreadystatechange = function() {
        if(xmlHttp.readyState == 4) {
            document.getElementById('response').innerHTML = xmlHttp.responseText;
            document.myform.post.value = '';
            retrieve();
        }
    }

    var url = "wall4.php";
    url = url+"?post=" + document.myform.post.value; 

    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}
4

1 に答える 1

3

パラメータをエンコードします。

url = url + "?post=" + encodeURIComponent(document.myform.post.value);
于 2012-07-25T13:49:30.397 に答える