【问题标题】:It is possible to prevent a page load using javascript可以使用 javascript 防止页面加载
【发布时间】:2013-08-06 05:52:12
【问题描述】:

我正在尝试使用 javascript 将查询参数返回给发布查询的客户端。我捕获查询参数,然后执行 document.write(parameter) 命令。但是,客户端正在接收返回的 document.write 数据和 HTML 页面内容,这使得回调无效,因为客户端只期望返回参数。那么如何防止在执行 document.write 后返回网页内容,所以我只返回参数值呢?

下面是我的javascript。网页创建为 .aspx 文件。

  <script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
//      function returnCallback() {
        var parm = location.search;

        var qs=parm.split("&");

        for (var i=0; i < qs.length; i++)
        {

                var pos = qs[i].indexOf('challenge');
                if (pos > -1) {
                    var qsarray = qs[i].split("=");
                    var challenge = qsarray[1];
                    document.write(challenge);

            }
        }

</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<textarea id="text1" cols="80" rows="20"></textarea>
</div>
</form>
</body>
</html>

【问题讨论】:

  • 使用return false;声明
  • 我尝试使用 return false 但它不会让我返回,除非它在函数内部,在这种情况下没有函数。

标签: javascript html query-string pageload


【解决方案1】:

快速浏览一下,我看不出您的代码没有任何问题,我假设问题出在您正在调用的页面上,它应该只返回所需的数据,因为您只是在捕获它抛出的内容。

【讨论】:

  • 我直接使用了来自 instagram 页面的示例,该示例说明了如何响应我正在尝试执行的订阅请求。样本为your-callback.com/url/…。如果我将我的网页替换为回调,它会像我想要的那样返回 hub.challenge 但是如果我通过我的 PHP 程序提交这个请求,该程序通过 curl 命令请求订阅,我会收到一个错误,说它收到了整个页面而不是不仅仅是我的查询参数。
猜你喜欢
  • 2013-08-10
  • 1970-01-01
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
  • 2012-06-21
  • 2011-01-13
  • 2019-07-24
  • 2016-09-20
相关资源
最近更新 更多