通过$ .load jquery发送和获取数据

时间:2014-04-15 20:12:55

标签: javascript jquery html ajax html5

我用HTML5和Javascript编写系统,使用Web服务获取数据库中的数据。

我只有一个页面,index.html,我在<div>

中加载的其他页面

问题是,我有一个页面可以编辑和添加新用户。

当加载此页面以添加新用户时,我执行此操作:

$("#box-content").load("views/motorista_add.html");

但是,我想发送一个参数或其他东西,告诉&#39; motorista_add.html&#39;从webservice加载数据以编辑用户。我试过这个:

$("#box-content").load("views/motorista_add.html?id=1");

我尝试使用它:

function getUrlVar(key) {
    var re = new RegExp('(?:\\?|&)' + key + '=(.*?)(?=&|$)', 'gi');
    var r = [], m;
    while ((m = re.exec(document.location.search)) != null)
        r.push(m[1]);
    return r;
}

但是不能工作。

如果不使用PHP,我有办法做到这一点吗?

2 个答案:

答案 0 :(得分:2)

这不会奏效。假设您正在motorista_add.html页面加载index.html。然后JS代码(函数getUrlVar())将在页面index.html上执行。因此,document.location该函数将赢得motorista_add.htmlindex.html

是的。要做你想要的东西,你需要服务器端语言,比如PHP。现在,在服务器端,您通过id变量获取GET参数,并使用它来构建motorista_add.php

答案 1 :(得分:0)

您可以通过这种方式传递数据:

$("#box-content").load("views/motorista_add.html", { id : 1 });

注意:如果数据作为对象提供,则使用POST方法(如上例所示);否则,假设GET。更多信息:https://api.jquery.com/load/