-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 回答