jquery没有向php发送参数

jquery not sending parameters to php

本文关键字:参数 php jquery      更新时间:2024-05-10

我遇到一个问题,jquery根本没有发送参数。我循环浏览了$_POST和$_REQUEST,但都没有包含我的信息。

//jquery client side
$.post(http://www.example.com/myscript.php,{"data":"1234"})
.done(function(info){alert("returned data "+info);});
//myscript.php server side
<?php
foreach($_POST as $val){
echo $val;
}
?>

我也试过$_REQUEST,我试过$.get。我不知道我做错了什么。如果我调用url栏中的php代码(http://www.example.com/myscript.php?data=1234)当它使用$_REQUEST时,它就起作用了。我试着把网址放在引号里,但没用,我试着从引号里去掉1234,但没管用。我浏览了SO上几乎所有的jquery问题,没有找到有效的问题,但我可能遗漏了一些内容。任何帮助都将不胜感激。

//jquery客户端

//url 周围缺少引号

$.post("http://www.example.com/myscript.php",{"data","1234"})
.done(function(info){alert("returned data "+info);});

你能试着使用这个吗,

    $.post( "http://www.example.com/myscript.php", { data: "1234"} ).done(function( info ) {
        alert("returned data "+info);
    });

参考编号:http://api.jquery.com/jQuery.post/

{"data","1234"}在javascript中是不变的,正确的是:

{"data":"1234"}

如果可以的话,我想建议一个替代方案…

$.ajax({
    type: 'POST',
    url: 'http://www.example.com/myscript.php',
    data: { data: "1234" },
    success: function doAfterPost() {
        // do this after the post has been sent
    }
});

这应该使用字符串值1234$_POST["data"]发送到指定的php文件。