c#
  • target
  • linkbutton
  • 2012-02-13 72 views 14 likes 
    14

    是有可能在LinkButton一個target="_blank" ...礦似乎沒有被工作C#目標=「_空白」在一個LinkBut​​ton

    <asp:LinkButton runat="server" ID="g31" Text="PDF" CommandArgument='<%# DataBinder.Eval(Container.DataItem,"productID") %>' CommandName='<%# DataBinder.Eval(Container.DataItem,"documentID") %>' OnCommand="linkbutton_showpdf" target="_blank"></asp:LinkButton> 
    

    否則我將不得不使用不同的按鈕格式?

    +0

    你想做什麼? – ShankarSangoli 2012-02-13 04:04:27

    +0

    我在後面的代碼中有一個Response.Redirect ...我試圖在另一個窗口中打開它。 – user979331 2012-02-13 04:05:25

    +2

    我可能會錯過它,但我沒有看到任何'target =「_ blank」'的符號。 – 2012-02-13 04:05:36

    回答

    -3

    只是渲染的href設置爲相應的URL錨,並設置target屬性_blank它會將網址打開到新窗口。

    <a href="urlOfThePage" target="_blank" >Click me</a> 
    
    +1

    這也工作得很好 – user979331 2012-02-13 04:41:42

    +1

    這是不正確的asp.net。請參閱下面的答案。 – 2014-12-05 15:54:34

    7

    您可以使用超鏈接控件,它具有target='_blank'屬性。但是,如果你必須使用一個LinkBut​​ton控件,那麼你可以添加一個OnClientClick屬性,然後調用JavaScript函數打開一個彈出窗口

    window.open(); 
    
    +0

    工作太:) :) – user979331 2012-02-13 04:39:27

    28

    你可以這樣使用帶有鏈接按鈕

    更換target="_blank"OnClientClick="window.document.forms[0].target='_blank';"

    +0

    我犯了一個錯誤......它是'W'而不是'W'。謝謝。現在它正在工作 – SearchForKnowledge 2014-06-26 20:30:11

    +2

    這將使鏈接按鈕被點擊後形式中的每個鏈接「target = _blank」 – deebs 2015-07-06 14:54:52

    +0

    您需要添加 'setTimeout(function(){window.document.forms [0] .target ='';} ,0);' – Nina 2016-11-18 17:01:53

    4

    我與Devsaninii的答案在我改變了形式的目標,發現我的網頁點擊,改變目標的鏈接後,切換到新窗口的其餘部分的不希望的行爲工作。這是有道理的,但不受歡迎。

    我打開一些鏈接的文件,並與他人加載新頁面。我希望在新窗口中打開文件,並且希望在同一個窗口中打開新頁面。但是在我改變了目標之後,一切都在一個新窗口中。我本可以通過併爲每個linkbutton添加一個客戶端點擊處理程序,但那太麻煩了。

    所以這是我想出了:

    我添加了一個類來我linkbuttons這是應該有一個新的窗口作爲目標,然後我加入這個小片的jQuery給我的腳本:

    $(function() { 
        $('a').click(function() { 
         if ($(this).hasClass('changeTarget')) { 
          window.document.forms[0].target = '_blank'; 
         } else { 
          window.document.forms[0].target = '_self'; 
         } 
        }); 
    }); 
    

    現在,當應該有一個新窗口的linkbutton被按下時,它將在新窗口中打開,當其他任何東西被按下時,它將在同一個窗口中打開。

    11

    目前的答案都不正確,即使<a>標籤在asp.net中也不是正確答案。

    使用HyperLink按鈕。甚至有一個目標屬性的屬性。

    <asp:HyperLink runat="server" NavigateUrl='http://rrs.com/aspx/Equipment/EquipmentType.aspx' Target="_blank">Create/Edit Part Types </asp:HyperLink> 
    
    +0

    100%最佳答案 – deebs 2015-07-06 15:00:37

    -1

    尋找這些問題的答案後,並沒有是我想要的到底是什麼(有一個按鈕,看看這樣做),我結束了使用超鏈接控制,而使用相同的CSS樣式作爲我的常用按鍵:

    .button { 
    
        background-color:#011745; 
        color:white; 
        padding:7px 12px 7px 12px; 
        margin:3px; 
        border-style:none; 
        font-size:12px; 
    
    } 
    
    .button:hover { 
    
        background-color:#336699; 
        color:white; 
        padding:7px 12px 7px 12px; 
        margin:3px; 
        border-style:none; 
        font-size:12px; 
    
    } 
    

    它看起來就像他們一樣!如果你打算在一個新窗口中打開一個鏈接的按鈕,那是我的,它幾乎是完美的。在一組表格中,它顯示的只是一個比常規按鈕更低的觸摸,所以我將它設置爲這樣:「position:relative; top:-2px;」那就是訣竅。我也必須強制forecolor白色:

    <asp:HyperLink ID="btnSummaryReport" Target="_blank" runat="server" Text="SUMMARY REPORT" CssClass="button" ForeColor="white" Font-Size="8" style="position:relative; top:-2px" /> 
    
    -1

    添加到@Devsainii上面的答案。

    將屬性OnClientClick="window.document.forms[0].target='_blank';"添加到您的LinkBut​​ton,然後在後面的代碼中,只需使用Response.Redirect("~/AnotherPage.aspx")即可導航到另一個頁面。

    相關問題