我用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,我有办法做到这一点吗?
答案 0 :(得分:2)
这不会奏效。假设您正在motorista_add.html
页面加载index.html
。然后JS代码(函数getUrlVar()
)将在页面index.html
上执行。因此,document.location
该函数将赢得motorista_add.html
但index.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/