服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服务器之家 - 编程语言 - ASP.NET教程 - DataList中TextBox onfocus调用后台void静态方法及获取相应行数

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

2019-10-18 12:46asp.net技术网 ASP.NET教程

DataList中我放了一个TextBox 现在的问题是当我光标放到TextBox上的时候。如果让onfocus调用后台某一个void静态方法并且在静态方法里边获取光标相应的DataList的相应行数,本文介绍如何实现,感兴趣的朋友可以了解下

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

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

Insus.NET的测试演示:

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

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(); 

延伸 · 阅读

精彩推荐