使用动态网址从javascript发布到php

时间:2014-10-15 23:10:55

标签: javascript php jquery ajax

我正在尝试从javascript到php网页的POST,并使用ajax这样做。我是一个菜鸟,因此我的语法有困难。

都在同一个函数中,

我的网址由:

生成
var id = markers[i].getAttribute("id");
var name = markers[i].getAttribute("name");
var url = "markerpages.php?name=" + name + "&id=" + id;

然后我在链接到网页时使用它:

<a href="'+ url +'" id="postData">link to PHP webpage</a> 

然后我的jquery使用该id运行:

$(document).ready(function() {
            $('.postData').click(function() {
                console.log("outside ajax is working");
                console.log(url);

                  $.ajax({
                    type: "POST",
                    url: ' + url + ',
                    data: {
                    source1: "some text",
                    source2: "some text 2"},
                    success: function (data) {
                        console.log(data);
                        console.log(url);
                        console.log("inside ajax is working");
                    }
                  });
            });
  });

然后我在我的php页面上:

 if (isset($_POST['source1'])) {
        $src1 = $_POST['source1'];
        echo $src1;
    }

    var_dump($_POST);

我不完全理解这里所需的查询语法,但即使我将其简化为ajax和点击,我也很难发布到正确的URL,并获得一个空的var_dump($ _ POST )。我一直试图发布到markerpages.php而没有附加任何id或名称。

最初我运行ajax作为此函数之外的函数,该函数由链接的onclick()触发,但是我在通过动态URL时遇到了太多困难,所以我决定使用它。至少可以说,我是一个没经验的人。

真诚地感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

$('.postData')

指的是一个班级。

使用:

$('#postData')

表示身份。

也代替

url: ' + url + ',

我会用

url: $("#postData").attr("href"),