试图了解http GET的工作原理,以及如何在JQuery中传递参数

时间:2013-05-15 15:18:47

标签: jquery http get

我正在尝试构建一个jQuery网页,当从浏览器调用时(GET请求)将获得 id 作为参数。

例如,假设用jQuery编写的网页是mypage.com。我现在想从浏览器中将 id 传递给此页面,如下所示:mypage.com/thisIsMyId。通过在浏览器中写入此内容,我希望打开mypage.com网页,并将thisIsMyID参数存储在我的jQuery脚本中的变量中,以便稍后使用。

这可能吗?我之前从未使用过jQuery。我只使用php发送带有帖子请求的json / xml文件。是否可以在URL中传递这样的参数,并使jQuery页面捕获参数供以后使用?

这在jQuery中看起来如何?只是获取参数的行并将其保存在变量中。

修改


为了更容易理解它是如何工作的... html页面看起来如何,当从mypage.com/thiIsMyId这样的浏览器请求时,我会打印thisIsMyId?我想这会是html和jQuery吗?

2 个答案:

答案 0 :(得分:1)

这是完全可能的,但除了客户端JS之外,您还需要服务器端重写规则。这也是相当可怕的,所以你可以考虑使用hashtag - 更容易传递,而不是到达服务器。

两个原则都是一样的。假设您使用的是URI(两者中较难的)。表示URL的JS变量是window.location,它是可转换为字符串的对象。 jQuery不需要这样做。为了在最后一个斜杠之后得到任何东西,以下工作:

 window.location.toString().substr(window.location.toString().lastIndexOf("/")+1);

然而,您需要编写要使用此ID的代码。

主题标签更简单:

 window.location.hash.substr(1);

这会在#。

之后给你任何东西

注意:真正的GET变量是mydomain.com/?id = 4

答案 1 :(得分:0)

GET看起来像mypage.com?id=2

要从网址获取GET变量,您需要做的就是这个......

var urlVariable = [];
urlVariable = location.search.replace('?', '').split('=');

urlVariable[0]将是名称的名称,urlVariable[1]将是值

希望这有帮助。