Как я могу получить идентификатор изображения из кликнув изображения с помощью jquery?

У меня есть список изображений, которые извлекаются из базы данных и загружаются в ListView в ASP. У меня есть функция нажатия JQuery, прикрепленная к каждому генерируемому изображению. Что мне нужно сделать, так это каким-то образом получить идентификатор кликаемого изображения, но сейчас я не вижу способа прикрепить идентификатор к каждому изображению.

ListView заполняется из источника SQLSource с идентификатором столбцов, UserName, Photo. Шаблон элемента использует имя пользователя и фотографию для отображения списка, но не позволит мне установить идентификатор с помощью Eval("fieldName").

Я пытаюсь сделать следующее: когда пользователь щелкает изображение, идентификатор, связанный с этим изображением, захватывается JQuery, который открывает другое окно и использует этот идентификатор, являющийся частью строки запроса. Пример:

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>

Есть идеи? ТИА

1 ответ

Решение

Таким же образом вы получаете HREF, вы также можете иметь идентификатор

$('.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();
});

Как говорит jostster, вам также нужно добавить id к вашему изображению, что-то вроде

id='Convert.ToString((int)DataBinder.Eval(item.DataItem, "ID"))'
Другие вопросы по тегам