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

    è possibile avere un target="_blank" in LinkButton ... il mio doesnt sembra funzionareC# target = "_ blank" in un LinkButton

    <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> 
    

    o se devo utilizzare un formato diverso pulsante?

    +0

    Cosa vuoi fare? – ShankarSangoli

    +0

    Ho un Response.Redirect nel mio codice dietro ... Sto cercando di aprirlo in un'altra finestra. – user979331

    +2

    Potrei mancarlo, ma non vedo alcun segno di 'target =" _ blank "'. –

    risposta

    -3

    Proprio rendono un ancoraggio con set href per appropriata URL e impostare l'attributo target a _blank aprirà l'url in una nuova finestra.

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

    Anche questo ha funzionato – user979331

    +1

    Questo non è corretto per asp.net. Vedi la mia risposta qui sotto. –

    7

    È possibile utilizzare il controllo Collegamento ipertestuale, che ha una proprietà target='_blank'. Tuttavia, se è necessario utilizzare un controllo LinkButton, quindi è possibile aggiungere un attributo OnClientClick che poi chiama una funzione JavaScript per aprire una finestra pop-up

    window.open(); 
    
    +0

    Anche questo ha funzionato :) – user979331

    28

    È possibile utilizzare come questo con Bottone

    Sostituire target="_blank"-OnClientClick="window.document.forms[0].target='_blank';".

    +0

    Ho fatto un errore ... è 'w' e non' W'. Grazie. Funziona ora – SearchForKnowledge

    +2

    Questo farà sì che ogni collegamento all'interno di tale forma "target = _blank" dopo che il pulsante di collegamento sia stato cliccato – deebs

    +0

    è necessario aggiungere 'setTimeout (function() {window.document.forms [0] .target = '';} , 0); ' – Nina

    4

    Stavo lavorando con la risposta di Devsaninii in cui ho cambiato l'obiettivo del modulo e trovato il comportamento indesiderato del resto delle mie pagine passando a una nuova finestra dopo aver fatto clic su un collegamento che ha cambiato il target. Il che aveva senso, ma era indesiderabile.

    Stavo aprendo file con alcuni collegamenti e caricando nuove pagine con altri. Volevo che i file si aprissero in nuove finestre e volevo che le nuove pagine si aprissero nella stessa finestra. Ma dopo aver cambiato il target, tutto era in una nuova finestra. Avrei potuto passare e aggiungere un gestore di clic del client a ogni singolo linkbutton, ma era troppo complicato.

    Così qui è quello che mi si avvicinò con:

    ho aggiunto una classe al mio linkbuttons che avrebbero dovuto avere una nuova finestra del bersaglio e poi ho aggiunto questo piccolo pezzo di jQuery per il mio script:

    Ora quando si preme un linkbutton che dovrebbe avere una nuova finestra, si apre in una nuova finestra e quando viene premuto qualcosa, si apre nella stessa finestra.

    11

    Nessuna delle risposte correnti è corretta, anche il tag <a> non è la risposta corretta in asp.net.

    Utilizzare il pulsante HyperLink. C'è anche una proprietà per l'attributo target.

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

    100% la migliore risposta – deebs

    -1

    Dopo aver guardato queste risposte e nessuno era esattamente quello che volevo (fare questo con uno sguardo tasto), ho finito per usare un controllo collegamento ipertestuale, ma usato lo stesso stile css come i miei pulsanti regolari:

    .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; 
    
    } 
    

    Sembravano proprio come loro! Se stai andando per un pulsante che apre un link in una nuova finestra, che ero, era quasi perfetto. In un insieme di celle di tabella, ha visualizzato solo un tocco inferiore rispetto ai pulsanti normali, quindi l'ho stilizzato in questo modo: "position: relative; top: -2px;" e quello ha fatto il trucco.Ho anche dovuto forzare il colore di default:

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

    Aggiunta alla risposta @Devsainii sopra.

    Aggiungere l'attributo OnClientClick="window.document.forms[0].target='_blank';" al LinkButton e quindi nel codice sottostante, è sufficiente utilizzare Response.Redirect("~/AnotherPage.aspx") per spostarsi su un'altra pagina.

     Problemi correlati

    • Nessun problema correlato^_^