我有一个从数据库中拉出并加载到ASP中的ListView的图像列表。我为每个生成的图像附加了一个JQuery点击函数。我需要做的是以某种方式获取被点击的图像的ID,但现在,我没有看到一种方法来将ID附加到每个图像。如何从使用jquery的点击图像获取图像ID?
ListView从具有列ID,用户名,照片的SQLSource填充。项目模板使用用户名和照片来显示列表,但不会让我使用Eval(“fieldName”)设置ID。
我想要做的是:当用户单击图像时,与该图像关联的ID由JQuery抓取,这会打开另一个窗口并使用该ID具有查询字符串的一部分。例如:
window.open(“anotherpage.aspx?id =”+ imgID);
这里是jQuery的我现在:
<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>
任何想法? TIA
在你创建每个图像的地方,尝试为图像进入的元素添加一个id,例如' SpYk3HH 2012-02-23 17:56:57
哦,你知道吗,th这是我的第一本能,但asp图像控件不会让你这样做。所以我用一个标准的HTML IMG,并允许我标记它,但现在的JavaScript没有解雇 – Sinaesthetic 2012-02-23 18:03:42
可能是因为我仍然使用ASP CssClass属性。将其更改为课程并且可行。谢谢! – Sinaesthetic 2012-02-23 18:05:00