私はVB.NETとJQMのサイトで作業しています。asp画像ボタンクリックイベントJQuery Mobile
今、私は、次のようなタグを使用して、標準的なイメージのボタンを含めるしようとしています:
<asp:ImageButton ID="btnYear" runat="server" ImageUrl="~/images/buttons/year_btn.gif" />
と、ファイルの後ろのVBコードに次のようなクリックイベントがあります:
Private Sub btnYear_Click(sender As Object, e As System.Web.UI.ImageClickEventArgs) Handles btnYear.Click
Session("TimeFrame") = "YEAR"
*do other code*
End Sub
イメージボタンをクリックしてコードをトレースすると、コードビハインドファイルのページイベント(ページロード、ページプリレンダリングなど)のすべてのコードが表示されますが、画像ボタンのクリックイベントは発生しません。
Imageボタンを標準のasp:Buttonに置き換えて同じようにすると、コード内のclickイベントが正常に起動します。 JQMページ内でASP ImageButtonを使用し、VBコードビハインドファイルでクリックイベントを保持することはできませんか?
EDIT彼の応答をandleerする [OK]を非常に感謝 - それはまた、これらのImageButtonsに関して、光に私のページで新しいシナリオ(問題)をもたらします。
ImageButtonコントロールは、ユーザーコントロール内に含まれています。私のページは、JQMの複数ページ機能の標準的な使い方に従って、複数の <div data-role="page">
elemenstを持つ単一のASPXファイルであり、それぞれ独自のID( "page1"、 "page2"、 "page3"など)を持ちます。各 "ページ"セクションには、イメージボタンを含むユーザーコントロールのインスタンスが含まれています。これはうまくいきます。ユーザーがデフォルトの「page1」から他の「page」に移動して画像ボタンの1つをクリックすると、コードが実行され、ページがリロードされ、ユーザーがデフォルトに戻りますページ - "page1"。
これはいいことではありません - ユーザーがボタンを押してページを再読み込みし、閲覧していた「ページ」要素にとどまることができるようにする必要がありました.JQMはURLにハッシュタグを使用してこれらの複数のページを実行しますMe.Load
`保護されたサブをPage_Load(オブジェクトとしてByVal送信者、System.EventArgsとしてByVal e)のハンドル
Me.Form.Attributes("onsubmit") = "this.action+=top.location.hash;"
End Sub`
I:私は、私が読んページのLoadイベントに追加されたコードの行を見つけましたもともと私のユーザコントロールのラジオボタンを使用していました.JQMはボタンとして表示されるように「スキニング」されていました。Page_Loadイベントのこの1行で、ユーザc ould "page"要素のラジオボタンをクリックすると、ラジオボタンの背後にあるコードが起動し、クリックされたのと同じ "ページ"要素にページがリロードされます。ラジオボタンをImage Buttonsに置き換えない - そのコード行をPage_Loadイベントに追加すると、ImageButtonコントロールは完全に機能しなくなります。つまり、コードビハインドでもクリックしてコードをクリックしても、Page_LoadやPage_Loadなどのページレベルイベントは実行されません。 Page_PreRender - ここをクリックすると、まったく何もできません....
これについてのご意見はありますか?
私はあなたの応答を感謝します - 私は返信で投稿する少し違った捻れを持っています - それはコメントのために少し長すぎるので.... – Brian