【问题标题】:IE:how to get popup's opening window when using window.open(url)IE:使用 window.open(url) 时如何获取弹出窗口的打开窗口
【发布时间】:2021-07-18 13:59:16
【问题描述】:

我们正在运行一个点击通话服务,我的想法基本上是这样的:网站在他们的页面上有一个链接,当点击链接时,一个网页(比如说它是 popup.aspx)托管在我们的服务器上是弹出窗口,用户可以输入他们的电话号码,然后单击“呼叫我”按钮让网站呼叫他。在按钮单击事件中,我想获取Request.UrlReferrer,然后查询数据库以获取网站的电话。但是在 IE 中,Request.UrlReferrer 为空(firefox 可以,还没有测试 chrome),我的问题是如何在 IE 中获取打开窗口的 url?

我们将 popup.aspx 放在我们的服务器上,因为

  1. 我们的客户网站不强制使用asp.net。

  2. 我们可以控制我们在弹出窗口中放置的内容,并且可以从我们这边修改页面,如果我们将弹出窗口放在我们的合作伙伴一侧,如果我们有 100 个合作伙伴,我们可以更改页面的设计,我们会通知大家改变这个,改变那个......

  3. 我们可以实现一个静态系统来了解一天如何弹出,哪个网站最受欢迎等

【问题讨论】:

    标签: javascript asp.net


    【解决方案1】:

    您是否尝试过 window.opener.location.href(在 javascript 中)?

    您还可以使用开启器在 javascript 中调用 pageMethod,以从您的(服务器端查询)中取回您的 CSS 并将其应用到您的 javascript 页面中。

    Link

    Popup.aspx

     <form id="form1" runat="server">
    <asp:ScriptManager EnablePageMethods="true" runat="server"></asp:ScriptManager>
    <div>
    
    <script>
        function call() {
            var location = window.opener.location.href;       
            PageMethods.GetPhoneNumber(location, clientcall);
        }
    
        function clientcall(phone){
            alert(phone);
        }
    
    </script>
    <a href="javascript:call();">Call</a>
    </div>
    </form>
    

    Popup.aspx.cs

    使用系统; 使用 System.Collections.Generic; 使用 System.Linq; 使用 System.Web; 使用 System.Web.UI; 使用 System.Web.UI.WebControls; 使用 System.Web.Services;

    public partial class Popup : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    
        }
    
        [WebMethod]
        public static string GetPhoneNumber(string referer)
        {
    

    // 将调用数据库的代码放在这里 返回“888-888-888”; } }

    调用页面

        <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
    </head>
    <body>
    <script>
        function opening() {
            window.open("Popup.aspx","mywindow", "status=1,toolbar=1");
        }
    </script>
    <a href="#" onclick="opening()">Ouvrir</a>
    
    </body>
    </html>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多