2012-10-31 40 views
1

这段代码有什么问题?将列表视图的行号传递给javascript函数

onclick="javascript:myclick('<%# Container.DataItemIndex %>')" 

我想通过列表视图控件的rowNumber javascript函数“myclick”。上面的代码将所有字符串“<%#Container.DataItemIndex%>”作为参数(不带引号)。但我想只是柜台(1,2,...)

任何更正/建议?除非你在代码隐藏调用Page.DataBind();地方

感谢

+0

这是一个asp.net按钮? –

+0

不,它是超链接标记:')”> – Makis

+0

酷伴侣!我正在寻找如何发送rownumber只是你如何做:) –

回答

1

您可以使用ListView的ItemDataBound事件:如果你想写这一切在标记(而不是从的ItemDataBound)

protected void ListView1_ItemDataBound(object sender, ListViewItemEventArgs e) 
{ 
    if (e.Item.ItemType == ListViewItemType.DataItem) 
    { 
     Hyperlink hlProperyLink = (Hyperlink)e.Item.FindControl("hlProperyLink"); 
     hlProperyLink.Attributes.Add("onclick", "javascript:myclick('" + e.Item.DataItemIndex.ToString() + "')"); 
    } 
} 
+0

非常感谢蒂姆它工作!只是一个更正:e.Item.DataItemIndex需要一个.ToString – Makis

+0

@Makis:当然,纠正。 –

0

,您可以使用此:

onclick='<%#"myClick(" + Container.DataItemIndex +")"%>' 
相关问题