Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在url中包含数据的方法_Javascript_Url_Php - Fatal编程技术网

Javascript 在url中包含数据的方法

Javascript 在url中包含数据的方法,javascript,url,php,Javascript,Url,Php,URL包含关于您在网站中的位置的数据,当您再次访问时,它们会显示确切的信息。例如,我在谷歌地图上搜索“巴塞罗那”,然后“飞”到马恩岛。如果您打开此urlhttps://www.google.com/maps/place/Barcelona/@54.2584676,-4.4790783,10z/数据=!4m2!3m1!10x12A49816718E30E5:0x44b0fb3d4f47660a您将在搜索框中看到巴塞罗那(place/Barcelona),但地图将放大马恩岛(@54.2584676,

URL包含关于您在网站中的位置的数据,当您再次访问时,它们会显示确切的信息。例如,我在谷歌地图上搜索“巴塞罗那”,然后“飞”到马恩岛。如果您打开此url
https://www.google.com/maps/place/Barcelona/@54.2584676,-4.4790783,10z/数据=!4m2!3m1!10x12A49816718E30E5:0x44b0fb3d4f47660a
您将在搜索框中看到巴塞罗那(
place/Barcelona
),但地图将放大马恩岛(
@54.2584676,-4.4790783
我想是吧)

所以它显示了我去过的地方,而不仅仅是一张地图和一个空的搜索框。大多数网站都会出现这种情况,URL包含有关照片、个人资料、模块等的数据。我不是说像(
site.com/page.html#header
)这样的简单锚。我不是在说AJAX

我想了解更多关于如何在url中存储数据的信息,以及当您访问url时,页面将加载特定的部分和数据


该方法的名称是什么?它是如何工作的?如何实现它?

请查看历史API,特别是
history.pushState()


我相信您指的是
GET
方法

将数据添加到查询字符串(通常在问号(
)后面的字符串被称为数据,并根据要传递给它的属性数除以and符号(
&

将属性传递给查询字符串的一种方法是使用
GET
方法,例如如下所示:

<form method="get" action="other-page.php">
    <input name="example" type="text" />
    <input name="other" type="text" />
    <input name="submit" type="submit" value="submit" />
</form>
然后可以在表单发送到的其他页面上检索此信息(您将在
表单
标记中的
action=“other page.php
下看到该其他页面的名称)

假设它是一个以中编写的页面,则可以通过以下方式获取属性值:

echo $_GET['example']; // this would output 'this'
echo $_GET['other']; // this would output 'that'
例如,在您的示例中,google使用
lon
lat
属性将您放置在地图的正确位置。尽管查看他们的查询字符串,但它们看起来使用的方法与我上面解释的经典
GET
不同

但是,hashtag(
#
)指向页面的特定部分(假设它没有被某些javascript代码操纵,但这是一个完全不同的故事)。如果您设置这样的链接:

<a href="section2">Click here to go to section 2</a>

…然后在您添加的页面的下方

<a id="section2"></a>


…点击上面的链接,页面将为您跳转到第2节。

非常感谢。但这意味着使用HTML5。我描述的方法存在于HTML5之前。那么,在HTML5之前呢?然后发生了什么?好的,谢谢。总之,这个“
GET
/查询字符串“这与AJAX无关。除了表单之外,我还可以用什么方法创建查询字符串?如果用户单击图像,我想在不重新加载页面的情况下更新url,我该怎么做?我可以使用javascript来处理(反序列化?)输入查询字符串?不,默认情况下,它与AJAX无关…另一种方法是在
a
标记(环绕图像)中使用它,重定向到该字符串(
),尽管这将刷新页面…下面是一种使用js获取url参数的方法:
<a id="section2"></a>