DataList中TextBox onfocus调用后台void静态方法及获取相应行数

小鱼们欢快的闹腾起来,有的甩动着尾巴,有的吐着泡泡,有的扭动着身体,互相追玩,好不热闹。春天来了!你看,融化的冰水把小溪弄醒了。 "丁粳、丁粳 ",它就像大自然的神奇歌手,唱着清脆悦耳的歌,向前奔流……

昨天在某一论坛上看到的。Insus.NET尝试做了一下,算是练习了。

Insus.NET的测试演示:

xxx.aspx:


<asp:DataList ID="dlItemGeneral" runat="server" CellPadding="0" CellSpacing="0" Width="100%"
OnItemDataBound="dlItemGeneral_ItemDataBound">
<ItemTemplate>
<asp:Table ID="Table1" runat="server" CssClass="table">
<asp:TableRow>
<asp:TableCell CssClass="tableTemplateCell" Width="15%">
物料编码 <%# Eval("ItemCode") %>
</asp:TableCell>
<asp:TableCell CssClass="tableCell" Width="30%">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</asp:TableCell>
<asp:TableCell CssClass="tableCell" Width="55%">
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</ItemTemplate>
</asp:DataList>

xxx.aspx.cs:
 
protected void dlItemGeneral_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
if (e.Item.FindControl("TextBox1") != null)
{
TextBox textBox = e.Item.FindControl("TextBox1") as TextBox;
textBox.Attributes.Add("OnFocus", "alert('" + GetRowNumber(e) + "'); this.value='" + GetTextBox(e) + "';");
}
}
}
private static string GetRowNumber(DataListItemEventArgs e)
{
return "当前行号为" + (e.Item.ItemIndex + 1).ToString();
}
private static string GetTextBox(DataListItemEventArgs e)
{
return "这是从静态方法获取值和当前行索引值为:" + e.Item.ItemIndex.ToString();
}

本文DataList中TextBox onfocus调用后台void静态方法及获取相应行数到此结束。努力在黑暗中站上舞台,是想成为万人的光。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
vs2010显示代码行数的方法

自定义 DataList 显示数据行数的方法

巧妙使用JQuery Clone 添加多行数据,并更新到数据库的实现代码

asp.net 长文章通过设定的行数分页

在.NET中取得代码行数的方法