【问题标题】:ASP, HyperLink Open small WindowASP, HyperLink 打开小窗口
【发布时间】:2016-12-23 16:33:16
【问题描述】:

我的网站有Gridview 控件,其中一些必须在每条记录上都有超链接。我需要的是超链接打开一个新的小窗口,因为我将数据从网格发送到新窗口。

这是我的GridView

<asp:GridView ID="gvwCajUpd" runat="server" CssClass="mGrid" AutoGenerateColumns="false"
                                PagerStyle-CssClass="pgr" AlternatingRowStyle-CssClass="alt" 
                                Font-Size="Smaller" >
                                <Columns>
                                    <asp:TemplateField>
                                        <ItemTemplate>
                                            <asp:HyperLink ID="hypCajUpd_CadDet" Text="Detalle" runat="server" target="_blank"
                                                NavigateUrl='<%# "Cajas_Detalle.aspx?cliCod=" + Eval("ClienteCodigo").ToString() 
                                                    + "&cajCod=" + Eval("CajaCodigo").ToString() 
                                                    + "&cajNum=" + Eval("CajaNumero").ToString()
                                                    + "&cajCon=" + Eval("CajaContenido").ToString()
                                            %>'/>
                                        </ItemTemplate>
                                    </asp:TemplateField>

                                    <asp:TemplateField HeaderText="CLIENTE">
                                        <ItemTemplate>
                                            <asp:Label ID = "lblCajUpd_CliCod" runat="server" Text='<%# Eval("ClienteCodigo") %>'></asp:Label>
                                        </ItemTemplate>
                                    </asp:TemplateField>
                                    <asp:TemplateField HeaderText="COD.CAJA">
                                        <ItemTemplate>
                                            <asp:Label ID = "lblCajUpd_CajCod" runat="server" Text='<%# Eval("CajaCodigo") %>'></asp:Label>
                                        </ItemTemplate>
                                    </asp:TemplateField>
                                    <asp:TemplateField HeaderText="NUM">
                                        <ItemTemplate>
                                            <asp:Label ID = "lblCajUpd_CajNum" runat="server" Text='<%# Eval("CajaNumero") %>'></asp:Label>
                                        </ItemTemplate>
                                    </asp:TemplateField>

                                    <!--- more and more data -->

我在新窗口中接收数据,但我需要这个新窗口小而不是在新标签中。

【问题讨论】:

  • 我不认为你可以强制超链接在窗口而不是标签中打开,这取决于用户的浏览器设置。
  • 如果是针对同一页面,您可能应该使用 JavaScript 来执行此操作。
  • 感谢您的帮助

标签: c# asp.net hyperlink


【解决方案1】:

为什么要使用超链接, 请改用此代码

<asp:TemplateField>
     <ItemTemplate>
       <a href="#" onclick="window.open('Sample.aspx?id= <%#Eval("UserCourseId") %> ','PrintMe','height=700px,width=500px,scrollbars=1');">SomeText</a>
     </ItemTemplate>
 </asp:TemplateField>

【讨论】:

    【解决方案2】:

    这可以这样完成:

    不要使用NavigateUrl,而是使用带有javascript函数的OnClick,它会以您想要的方式打开一个新的小窗口。

    NavigateUrl="#"        
    onClick='<%# "window.open('Cajas_Detalle.aspx?cliCod=" + 
                          Eval("ClienteCodigo") + "&cajCod=" + Eval("CajaCodigo") + 
                          "&cajNum=" + Eval("CajaNumero") + "&cajCon=" + 
                          Eval("CajaContenido")+ 
                          ",'name','height=550, width=790,toolbar=no,
                          directories=no,status=no,
                          menubar=no,scrollbars=yes,resizable=no'); 
                          return false;%>'  
    

    如果这有帮助,请告诉我

    【讨论】:

      【解决方案3】:

      非常感谢 我可以解决我的问题:

      <asp:TemplateField>
                                              <ItemTemplate>
                                                  <a href="#" onclick="window.open('Cajas_Detalle.aspx?cliCod= <%#Eval("ClienteCodigo").ToString() 
                                                      + "&cajCod=" + Eval("CajaCodigo").ToString() 
                                                      + "&cajNum=" + Eval("CajaNumero").ToString()        
                                                      %> ','PrintMe','height=400px,width=800px,scrollbars=1');">Detalle</a>
                                              </ItemTemplate>
                                          </asp:TemplateField>
      

      谢谢 最好的问候

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-10
        • 2020-11-08
        • 1970-01-01
        • 1970-01-01
        • 2015-02-23
        • 1970-01-01
        相关资源
        最近更新 更多