私はデータベースから取得され、ASPのListViewに読み込まれる画像のリストを持っています。生成される各画像にJQueryのクリック機能が添付されています。私がする必要があるのは、何とかクリックされた画像のIDを取得することですが、今は、IDを各画像に付加する方法はありません。jqueryを使用してクリックした画像から画像IDを取得するにはどうすればよいですか?
ListViewは、列ID、UserName、Photoを持つSQLSourceから作成されます。アイテムテンプレートはユーザー名と写真を使用してリストを表示しますが、Eval( "fieldName")を使用してIDを設定することはできません。
私がしようとしているのは、ユーザーがイメージをクリックすると、そのイメージに関連付けられたIDが別のウィンドウを開き、そのIDをクエリー文字列の一部として使用するJQueryによって取得されます。例:
window.open( "anotherpage.aspx?id =" + imgID);
<script type="text/javascript">
jQuery(document).ready(function() {
$('[class=originalPhoto]').click(function (event) {
var url = $(this).attr("href");
var windowName = "popup";
window.open("test.aspx");
event.preventDefault();
});
});
</script>
そして、リストビュー:
<telerik:RadListView ID="photoList" runat="server"
DataSourceID="employeePicsSource" DataKeyNames="ID">
<ItemTemplate>
<center>
<p>
<table border="0" width="1000" cellpadding="10" class="personnelCell">
<tr>
<td width="25%"><%#Eval("FullName") %></td>
<td width="25%"><%#Eval("ADGUID") %></td>
<td width="25%" align="center"><asp:Image runat="server"
ImageUrl='<%#GetImageURL((int)DataBinder.Eval(Container.DataItem,"ID")) %>'
Width="200" CssClass="originalPhoto" /></td>
<td width="25%"><asp:Image runat="server" Width="96" Height="96" /></td>
</tr>
</table>
</p>
</center>
</ItemTemplate>
</telerik:RadListView>
<asp:SqlDataSource ID="employeePicsSource" runat="server"
ConnectionString="<%$ ConnectionStrings:Employee_Photos_DevConnectionString %>"
SelectCommand="SELECT [FullName], [ADGUID], [Photo], [ID] FROM [Employee_AndPhoto]">
</asp:SqlDataSource>
任意のアイデアここで
は、私が今持っているjqueryのでしょうか? TIA
あなたはjoststerが言うように、あなたはまた、あなたに画像をIDを追加する必要があり、同様$('.originalPhoto').click(function (event) {
var url = $(this).attr("href");
var id = $(this).attr("id");
var windowName = "popup";
window.open("test.aspx?id="+id);
event.preventDefault();
});
IDを持つことができるのhrefを取得するのと同じ方法で
のようなものそれぞれのイメージを確立するところでは、 ' SpYk3HH
ああ、何を知っていますか私の最初の本能でしたが、ASPの画像コントロールはあなたがそれをやり遂げることはありません。だから私は標準的なHTMLのimgを使用し、それは私がそれをタグにすることができましたが、今はJavaScriptがas34のCssClass属性を使用していたので、おそらく – Sinaesthetic
を発射していません。それをクラスに変更し、それは動作します。ありがとう! – Sinaesthetic