使用POST和AJAX获取数据

时间:2011-05-09 03:53:59

标签: javascript ajax post get

我正在尝试使用AJAX异步发送服务器中的一些数据。 我需要使用POST方法发送数据,因为发送的数据非常好 许多字符并使用GET创建的网址太大。那不是问题,但出于美学原因,我宁愿拥有小网址。为了做到这一点,我使用了here解释的解决方案(问题)。

我发送数据的Javascript代码是:

   var code = "code=" + document.getElementById("code_area").value;
   xmlhttp.open("POST", "run_code.php", true);
   xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   xmlhttp.send(code);

当我点击按钮时执行上面的代码,但是URL更改为:localhost/code.php?code=datadatadatadatadatadatadatadatadatadatadatadatadatadata这似乎与使用GET相反(我的网址变得非常大)。我使用了POST,而不是GET,但数据似乎仍然通过网址传输。任何想法为什么会发生这种情况?

3 个答案:

答案 0 :(得分:1)

使用jQuery可以更轻松地完成这项工作。

$.post("run_code.php", { code: $("#code_area").val() });

链接:

答案 1 :(得分:0)

使用jquery更容易......

$.post( 'yoururlhere.com/phppage',
        {code:$("#code_area").val()},
        function(responseData){
            // responseData is the echo'd data set from your php page
        }, 'json'
);

{}内的数据是后K-V对

responseData是从php

回显的数据集

答案 2 :(得分:0)

问题毕竟是我在我的HTML页面中使用提交输入字段,如下所示:

<input type="submit" />

使用时更改(刷新)URL。

使用:

<input type="button" />

问题已得到解决。