查询字符串变量自动添加到url

时间:2018-09-11 04:39:14

标签: javascript php runtime-error query-string

我是编程新手,只是弄脏了我的手。我试图根据URL的长度向用户显示一些内容。以下是代码

<!DOCTYPE HTML>
<html>

<head>
    <title>Random</title>
    <meta charset="utf-8" />
</head>

<body id="main" style="display:none">
    <h1>
        Paste something
    </h1>
    <form action="abcd.php" method="post">
        <input type="text" name="URL" placeholder="random url" id="something" required>
        <input type="submit" value="do something">
    </form>
</body>
<script>
    if (window.location.href.length - 1 > 35) {
        alert("redirect");
    } else {
        alert("show");
    }
</script>

</html>

就我而言,URL的最小长度为35个字符。但是,当我第一次添加很长的URL时,将显示“重定向”警报,而不是显示“显示”警报。第二次运行正常。在删除缓存后,整个故事重复了。

PS:查询字符串变量是我自己添加的。例如,当我访问domain.com时,它自己写在地址栏中的domain.com/?i=1(仅当我在删除缓存后第一次访问该URL时)。

如何让它在第一时间起作用?任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我不知道为什么在第一次页面加载时添加查询字符串。使用下面的示例从URL中删除查询字符串,并计算不包含查询字符串的URL的长度。

<script>
  var url=window.location.protocol;
      url +="//"+window.location.host;
      url +=window.location.pathname;
     if(url.length-1 > 35){
       alert("redirect");
     }else{
       alert("show");
     }
</script>