Href 转到另一个页面并在该页面上加载 ajax

Posted

技术标签:

【中文标题】Href 转到另一个页面并在该页面上加载 ajax【英文标题】:Href to go to another page and load ajax on that page 【发布时间】:2020-06-09 20:10:12 【问题描述】:

页面A我有这些导航链接:

            <li>
                <a href="PageB.aspx" target="_blank" class="active">
                    <span>Option 1</span>       //<--I want to go to page B and load Ajax1
                </a>
            </li>
            <li>
                <a href="PageB.aspx" target="_blank">
                    <span>Option 2</span>       //<--I want to go to page B and load Ajax2
                </a>
            </li>

页面 B我有这些导航链接可以在此页面上加载 ajax:

            <li >
               <a href="AjaxHandler/Ajax1.ashx?Type=Page&amp;Security=0">
                  <span>Ajax 1</span>
               </a>
            </li>

            <li >
                <a href="AjaxHandler/Ajax2.ashx?Type=Page&amp;Security=0">
                   <span>Ajax 2</span>
                </a>
            </li>

我希望当我点击页面 A 上的 Option 1 时,它会转到页面 B 并在页面 B 上加载 Ajax 1 并同样转到 Option2,我希望它转到页面 B 并在页面 B 上加载 Ajax 2

现在页面A的nav链接只会跳转到页面B,我需要单独点击页面B的nav链接来加载那个页面的ajax。

我可以通过 A 页上的href 实现此目的吗?如果有人可以提供帮助,请不胜感激。

【问题讨论】:

欢迎来到 Stack Overflow。您可以将参数传递给 PageB,例如 PageB.aspx?ajaxRequest=1,并在 PageB 加载时处理该参数值,以便您可以触发相应的 ajax 请求。 嗨,你的意思是喜欢,把它放在页面A上href="PageB.aspx?ajaxRequest=1"? 是的,这是一种方法。然后 Page B 将收到该参数,您应该能够使用它。 【参考方案1】:

非常感谢 vicpermir 我想通了。

页面A:将参数传递给页面B

        <li>
            <a href="PageB.aspx?ajaxRequest=1" target="_blank">
                <span>Option 1</span>       //<--I want to go to page B and load Ajax1
            </a>
        </li>
        <li>
            <a href="PageB.aspx?ajaxRequest=2" target="_blank">
                <span>Option 2</span>       //<--I want to go to page B and load Ajax2
            </a>
        </li>

页面 B:将类添加到 ajax 处理程序

        <li >
           <a href="AjaxHandler/Ajax1.ashx?Type=Page&amp;Security=0" class="ajax1">
              <span>Ajax 1</span>
           </a>
        </li>

        <li >
            <a href="AjaxHandler/Ajax2.ashx?Type=Page&amp;Security=0" class="ajax2">
               <span>Ajax 2</span>
            </a>
        </li>

$(document).ready(function () of javascript页面 B

    function LoadAjaxOnPage() 
       let params = (new URL(document.location)).searchParams;
       let paramVal = params.get("ajaxReq");

       if (parseInt(paramVal) == 1) 
           document.getElementsByClassName("ajax1")[0].click();
       
       if (parseInt(paramVal) == 2) 
           document.getElementsByClassName("ajax2")[0].click();
       

    

基本上发生的情况是,当页面 B 加载时,它会获取从页面 A 传递的参数,并根据该参数自动单击页面 B 上的href

【讨论】:

以上是关于Href 转到另一个页面并在该页面上加载 ajax的主要内容,如果未能解决你的问题,请参考以下文章

ajax执行成功后可以跳转到另一个页面吗?

Selenium2 点击按钮跳转页面,如何判断页面是不是加载完成(包含跳到对应页面有ajax的访问)

JQuery ajax操作,怎么让页面首次加载时就呈现所有数据

重定向并重新加载,即使是同一页面

nodejs puppeteer打开一个页面后,在点击跳转到另一个页面 怎么判断这么页面是不是所有的元素都已加载完成

我收到错误:在名称范围内找不到名称 - 在MVVMLight应用程序中从一个页面移动到另一个页面时