【问题标题】:how to use image button to open the url in another window如何使用图像按钮在另一个窗口中打开网址
【发布时间】:2011-08-10 10:20:04
【问题描述】:

您好,我知道如何通过设置 target = _blank 在超链接中实现这一点,我如何使用图像按钮控件来做到这一点,下面是我的代码:

<asp:ImageButton OnClick="test_Click" ImageUrl="/images/contactUs/directionbtn.png" ID="test" runat="server" ValidationGroup="group2" />

             <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
            ControlToValidate="txtPostcode1" ErrorMessage="Postcode is required"  ValidationGroup="group2"></asp:RequiredFieldValidator>
            <br />

后面的代码:

    protected void test_Click(object sender, ImageClickEventArgs e)
{

    Response.Redirect(String.Format("http://maps.google.co.uk/maps?saddr={0}&daddr=&daddr=Wigan+WN6+0HS,+United+Kingdom&iwloc=1&dq=Tangent+Design", txtPostcode1.Text));



}

任何帮助或建议将不胜感激

【问题讨论】:

  • 使用锚点作为图像的容器。还是 asp.net 行话,
  • 当前链接在同一页面上打开
  • 我需要将 txtpostcode 值传递给链接,然后我将如何实现 4
  • ok... 在 javascript 中执行 在 javascript: foo(){ var txtPostCode = document.getElementById('txtPostcode1').value; window.open("maps.google.co.uk/maps?saddr=" + txtPostcode1 + "&daddr=&daddr=Wigan+WN6+0HS,+United+Kingdom&iwloc=1&dq=Tangent+Design"","MyWindow","height=375,width=350") ; } // 不要忘记验证 if(txtPostcode1 !== ''){foo();}
  • 使用脚本验证组不起作用

标签: asp.net validation imagebutton new-window


【解决方案1】:

您可以使用 Attributes 集合添加 "target","_blank"

这应该将目标属性添加到图像周围的锚链接

【讨论】:

  • 我们是否必须这样做 ImageButton1.Attributes.Add("target", "_blank");
【解决方案2】:
protected void Page_Load() {
   ControlID.Attributes.Add("target", "_blank");    
}

如果这不起作用,请尝试将其添加到您的 ImageButton:

<asp:ImageButton runat="server" OnClientClick="window.open('http://url/to/open');" ></asp:ImageButton>

【讨论】:

  • 我应该这样做 ImageButton1.Attributes.Add("target", "_blank");
  • 只是好奇 - 你为什么不直接使用 控件或
  • 链接按钮不支持图片..我可以使用超链接但超链接不支持onclick事件:(
  • 我试过 ImageButton1.Attributes.Add("target", "_blank");但它仍然在同一个窗口中打开..
【解决方案3】:

target="_blank" 添加到 onClientClick 即可解决问题

【讨论】:

    【解决方案4】:

    我只是想出来..

    Page_Load事件上,放

        this.Form.Target = "_blank"; // Will set all link's target to a new window
    

    然后例如在图像按钮Click 事件中,您输入:

        Response.Redirect("http://stackoverflow.com");
    

    它只会在新标签页中打开此页面。试试看:)

    【讨论】:

      【解决方案5】:

      试试这个:

      <asp:ImageButton OnClick="test_Click" ImageUrl="/images/contactUs/directionbtn.png" ID="test" runat="server" ValidationGroup="group2" OnClientClick="form1.target ='_blank';" />
      

      【讨论】:

        【解决方案6】:

        在后面的代码中。

        imgbtn.OnClientClick = "target='blank'";
        

        你已经完成了。

        【讨论】:

          【解决方案7】:
          this.Form.Target = "_blank"; 
          

          这样,客户可以在新页面中看到他想要的内容,因为服务器和可用的内容以及他在网站中的帐户在页面加载开始时可用

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2015-01-25
            • 2016-02-28
            • 2015-04-07
            • 1970-01-01
            • 1970-01-01
            • 2021-12-03
            • 2012-06-17
            相关资源
            最近更新 更多