有一个网站从用户那里获得一些输入并将其存储在某个地方。现在,在输入字段中,我输入 - naman#jain。现在,客户端将形成一个网址,如www.website.com/?name=naman#jain。 #jain也被发送到服务器。正如我在#浏览器忽略所有内容后所读到的那样。如果我错了,请纠正我。那么这究竟是怎么发生的呢?
我试着在评论中提问 - Usage of hash in URL但找不到合适的答案。
答案 0 :(得分:0)
提交表单时,表单参数是url编码的。因此输入naman#jain
将导致类似
www.website.com/?name=naman%23jain
这是它发送到服务器的方式。 GET参数被编码回来并被使用。
答案 1 :(得分:0)
您可以通过以下方式访问哈希:
console.log(window.location.hash);
为了能够存储哈希,您可以使用例如以下代码:
$.ajax({
type: "POST",
url: "save.php",
data: { name: $("#name").val(), hash: window.location.hash }
})
.done(function( msg ) {
alert( "Data Saved: " + msg );
});
聚苯乙烯。这是未经测试的,因此它可能无法运行:-)也许有更好的方法来做,就像你可以将哈希保存到隐藏字段然后执行表格序列化。