Ho lavorato su un sito in VB.NET e JQM e tutto è andato bene.evento di clic pulsante asp image con JQuery Mobile
Ora, sto cercando di includere un pulsante standard immagine utilizzando un tag come:
<asp:ImageButton ID="btnYear" runat="server" ImageUrl="~/images/buttons/year_btn.gif" />
e nel codice VB dietro file di v'è un evento click simile al seguente:
Private Sub btnYear_Click(sender As Object, e As System.Web.UI.ImageClickEventArgs) Handles btnYear.Click
Session("TimeFrame") = "YEAR"
*do other code*
End Sub
Quando faccio clic sul pulsante Immagine e rintraccio il codice - tutto il codice negli eventi della pagina nel codice dietro il fuoco del file (caricamento della pagina, prerender della pagina, ecc.) - ma l'evento click per il pulsante immagine non viene attivato.
Se sostituisco il pulsante Immagine con un asp standard: pulsante e faccio lo stesso - quindi l'evento click nel codice dietro si accende bene! Non è possibile utilizzare un ImageButton ASP all'interno di una pagina JQM e mantenere un evento click nel codice VB dietro il file?
EDIT Ok molto apprezzamento per andleer per la sua risposta - ma porta un nuovo scenario (problema) con la mia pagina alla luce, anche per quanto riguarda questi ImageButtons.
I controlli ImageButton sono contenuti in un controllo utente. La mia pagina è un singolo file ASPX con più <div data-role="page">
elemenst in esso, ciascuno con il proprio ID ("pagina1", "pagina2", "pagina3", ecc.) Che segue l'utilizzo standard della funzionalità multipagina di JQM. Ogni sezione "pagina" contiene un'istanza del controllo utente che contiene i pulsanti Immagine. Tutto funziona bene, con un solo problema: quando l'utente si sposta dall'impostazione predefinita "pagina1" a qualsiasi altra "pagina" e fa clic su uno dei pulsanti immagine, il codice si attiva, la pagina viene ricaricata e l'utente torna sul predefinito pagina - "pagina1".
Questo non va bene - avevo bisogno di un modo per consentire all'utente di sparare il pulsante e ricaricare la pagina e rimanere sull'elemento "pagina" che stavano visualizzando - JQM realizza queste pagine multiple usando i tag hash nell'URL - quindi ho trovato una riga di codice che ho aggiunto alla manifestazione della pagina di carico che diceva:
`Protected Sub Page_Load (ByVal sender As Object, ByVal e come System.EventArgs) tratta Me.Load
Me.Form.Attributes("onsubmit") = "this.action+=top.location.hash;"
End Sub`
I era originariamente utilizzando i pulsanti di scelta sul mio controllo utente - che JQM era "skinning" in modo che apparissero come pulsanti - e con questa riga nell'evento Page_Load, un utente c fare clic su un pulsante di opzione su qualsiasi elemento di "pagina" e il codice dietro i pulsanti di opzione si attiverebbe e la pagina si ricaricherà con l'utente sullo stesso elemento "pagina" da cui ha fatto clic, non sostituendo quindi il pulsante di opzione con i pulsanti di immagine. quando aggiungo la riga di codice all'evento Page_Load, i controlli ImageButton cessano completamente di funzionare - quando faccio clic sul codice nel loro clic anche nel codice sottostante non si attiva - né alcuno degli eventi a livello di pagina come Page_Load o Page_PreRender - facendo clic su di essi ora non fa assolutamente nulla ....
Qualche idea su questo?
Apprezzo la tua risposta - ho un po 'di torsione diversa che posterò in una risposta - perché è un po' troppo lunga per un commento .... – Brian