通过javascript中的URL设置变量

时间:2013-12-03 05:10:56

标签: javascript jquery url

嘿,我想知道以下是否可能:

有一个单页网站,例如index.html 和一个varibale例如     MyVariable = 123; 在这个index.html的js脚本中。 URL example.com将显示index.html

现在是否可以共享一个类似于example.com/1234或类似的链接,然后显示正常的index.html文件,但它在js脚本中将变量MyVariable更改为“1234”?

谢谢! :)

2 个答案:

答案 0 :(得分:3)

首先,您需要将服务器端example.com/*格式的任何网址重定向到您的index.html文件。如何执行此操作取决于您使用的服务器。

对于Apache,您需要编辑.htaccess文件或配置以添加重写规则:

<ifModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !index
    RewriteRule (.*) index.html [L]
</ifModule>

来源:http://www.josscrowcroft.com/2012/code/htaccess-for-html5-history-pushstate-url-routing/

然后,在JavaScript代码中,您可以通过window.location对象访问当前位置(URL)。 您会对pathname属性感兴趣,该属性将包含在您的示例中:/1234

要提取值,您必须执行以下操作:

var MyVariable = window.location.pathname.substring(1);

答案 1 :(得分:1)

我建议使用php get,如果你使用的是apache,你可以通过链接转移你的变量

像index.php?myvariable = 1234

一样打电话给你
<html>
<body>

your variable is <?php echo $_GET["myvariable"]; ?>


</body>
</html>

http://www.w3schools.com/php/php_forms.asp