我有这个网址:
csumb/index.php?page=consultanta
我尝试比较2个链接,但如果我更改链接并刷新页面,此代码会执行相同的操作。
var pathname = window.location.pathname;
var a = "csumb/index.php?page=consultanta";
if(pathname == a) {
$("body").html("rahat");
}
答案 0 :(得分:2)
要使用文字参考,location
(或window.location
有多个部分):
https://packagist.org/search/?search_query%5Bquery%5D=symfony
将console.log(location)
直接用于Chrome控制台,它会提供以下属性(以及其他一些内容):
hash: ""
host: "packagist.org"
hostname: "packagist.org"
href: "https://packagist.org/search/?search_query%5Bquery%5D=symfony&page=4"
origin: "https://packagist.org"
pathname: "/search/"
port: ""
protocol: "https:"
search: "?search_query%5Bquery%5D=symfony&page=4"
你真正追求的是:
var pathname = location.pathname + location.search;
var a = "/csumb/index.php?page=consultanta";
// ^ Note the / at the beginning
如果网址中的文件名位于location.pathname
,则index.php
也不需要单独添加。
答案 1 :(得分:1)
试试这个:
var pathname = window.location.pathname;
var search = window.location.search;
var a = "/csumb/index.php?page=consultanta";
if((pathname + search) == a) {
$("body").html("rahat");
}
答案 2 :(得分:1)
这不是jQuery,请将标题编辑为javascript。 if语句中没有使用jQuery部分。 window.location.pathname返回类似/csumb/index.php的内容,不带参数。因此,如果您想使用其他参数检查路径名,则需要执行以下操作:
var path = window.location.pathname + window.location.search;
答案 3 :(得分:0)
您需要使用===运算符,并且需要添加“/".
您还需要window.location.search
:
var a = "/csumb/index.php?page=consultanta";
var search = window.location.search;
var pathname = window.location.pathname;
if(pathname + search === a) {
$("body").html("rahat");
}