1. 在Datagrid或DataList 中显示序列号
<asp:Label ID="labEduNum" runat="server" text='<%# Container.ItemIndex + 1 %>' ></asp:Label>
2. DataGrid或DataList 中删除
第一种方法:
protected void eduList_ItemDataBound( object sender, DataListItemEventArgs e )
{
if ( e.Item.ItemType == ListItemType.EditItem || e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Button btDelete = (Button)e.Item.FindControl( "btnDeleteEdu" );
btDelete.Attributes.Add( "onclick", "return confirm('你真的要删除此条教育经历吗?')" );
}
}
绑定到DataList上的是DataTable,DataTable有每行每列,((DataRowView)e.Item.DataItem).Row.ItemArray[0].ToString(); 是对一行的每列的值(从数据库中读取出来的值)
第二种方法(客户端实现)
<asp:Button ID="btnDeleteEdu" runat="server" Text="删除" style="width:80px; height:25px;" CommandName = "Delete" CommandArgument='<%# Eval("edu_id") %>' OnClientClick="return isExc()"/>
function isExc()
{
var ok=confirm("确定执行操作吗?!")
if(!ok)return false
else return true;
}
3. 将开始日期与结束日期用"-"连接起来,在DataGrid/DataList中只显示一列
<asp:Label ID="labDate" runat="server" Text='<%# string.Format("{0}-{1}", Eval("eduBeginTime"), Eval("eduEndTime")) %>'></asp:Label></td>
4. 将服务端的值传递到客户端
服务端:
Page.ClientScript.RegisterStartupScript( typeof( string ), "aa", "getEdu('" + strBasicInfo + "'," + rows + "," + columns + ",'basicInfo');", true );
客户端:
function getEdu(strEduStory,rows,columns,idName)
{
var strEdu;
for(var i = 0; i<rows;i++)
{
strEdu = strEduStory.split('$')[i];
for(var j = 0; j<columns;j++)
{
var name = document.getElementById(idName+i+j);
name.innerHTML = strEdu.split('*')[j];
}
}
}
5. 客户端调用服务端的方法(ajax)
客户端:
//调用服务端的方法,
Admin_AddResume.addValue(strApply,strEdu,strJob,getReturn);
Admin_AddResume类名 addValue方法名字
服务端:
pageLoad:
Ajax.Utility.RegisterTypeForAjax( typeof( Admin_AddResume ) );
方法:
[Ajax.AjaxMethod( Ajax.HttpSessionStateRequirement.Read )]
public bool addValue(string strApply,string strEdu,string strJob)
{
}
本文介绍了ASP.NET中Datagrid和DataList控件的使用技巧,包括如何显示序列号、实现删除确认、组合日期显示等,并提供了客户端和服务端交互的具体实现案例。

被折叠的 条评论
为什么被折叠?



