我有一个不同的图像和描述的Datalist ...我希望点击图像并通过javascript知道所选行的索引(制作分页图片)。
我有这段代码,但不起作用......它总是在变量“当前页面”中返回1。
我的ASP.NET代码
<HeaderTemplate>
<table style="width: 100%;">
<tr>
<th style="width: 25%"></th>
<th style="width: 45%">
<asp:Label runat="server" ID="lblLegenda" Text="legenda" />
</th>
<th style="width: 10%;"></th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td style="padding: 5px">
<asp:Image ID="img_gall" onclick="LoadDiv(this.src, this)" Style="cursor: pointer;" runat="server" Width="70px" ImageUrl='imageurl' />
</td>
<td>
<asp:Label runat="server" ID="lblMultimediaDesciprion" Text='description' />
</td>
<td class="icons">
<asp:ImageButton ID="delete_image" ImageUrl="Images/icons/delete.png" runat="server" CommandName='<%# Eval("ID") %>' OnClick="delete_image" />
</td>
</tr>
</ItemTemplate>
<AlternatingItemTemplate>
<tr class="colored">
<td style="padding: 5px">
<asp:Image ID="img_gall" onclick="LoadDiv(this.src, this)" runat="server" ImageUrl='imageurl' /></td>
<td>
<asp:Label runat="server" ID="lblMultimediaDesciprion" Text='description' />
</td>
<td class="icons">
<asp:ImageButton ID="delete_image" ImageUrl="Images/icons/delete.png" runat="server" CommandName='<%# Eval("ID") %>' OnClick="delete_image" />
</td>
</tr>
</AlternatingItemTemplate>
</asp:DataList>
JAVASCRIPT CODE
var CurrentPage = 1;
function GetImageIndex(obj) {
while (obj.parentNode.tagName != "TD")
obj = obj.parentNode;
var td = obj.parentNode;
var tr = td.parentNode;
if (td.rowIndex % 2 == 0) {
return td.cellIndex + tr.rowIndex;
}
else {
return td.cellIndex + (tr.rowIndex * 2);
}
}
function LoadDiv(url, lnk) {
CurrentPage = GetImageIndex(lnk.parentNode) + 1;
}
任何人都可以帮助我吗?
答案 0 :(得分:0)
您复制了“parentNode”,更改了
GetImageIndex(lnk.parentNode)
要
GetImageIndex(lnk)
答案 1 :(得分:0)
// OnItemCommand =“dlstnewproducts_ItemCommand”在源数据库中使用它。
//对于图像,给出CommandName =“编辑”
protected void Datalist_ItemCommand(object source,DataListCommandEventArgs e) { 尝试 { if(e.CommandName ==“编辑”) { string Key = Datalist.DataKeys [e.Item.ItemIndex] .ToString(); //Response.Redirect("ViewProduct1.aspx?UserId="+Key); } 其他 { 的Response.Redirect(login.aspx的); }
在密钥中,您将获得索引