我在vs2010使用教程中的datalist里面放了一个div是事先写好的,结果发现放进datalist里面之后重复了三遍~..

我在datalist里放了一个按钮 想通过这个按钮的javascript的事件获取当前行div的id_百度知道
我在datalist里放了一个按钮 想通过这个按钮的javascript的事件获取当前行div的id
请问下大家,这个js的事件怎么写?
我有更好的答案
按默认排序
绑定点击事件,addEventListener(datalist对象,function(e){var event=e||window.var target=event.target||event.srcE//事件对象if(target.type==&div&){target.id//你所想要的}},false)//冒泡阶段捕获事件
其他类似问题
datalist的相关知识
您可能关注的推广
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁如何用datalist控件且不显示top5以后的数据
datalist控件用objectdatasource调用的语句是 select * form 如果让datalist不显示top5以后的数据
前提是不要让我在数据查询句里加top5绝不不懂装懂,不因为自己的问题低级而感到不好意思,踏踏实实的虚心学习。
&%@ Page Language=&C#& AutoEventWireup=&true& Debug=&true& EnableEventValidation=&true& %&
&!DOCTYPE html PUBLIC &-//W3C//DTD XHTML 1.0 Transitional//EN& &http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&&
&script runat=&server&&
protected void Page_Load(object sender, EventArgs e)
DataList1.DataSource = this.CreateDataSourceByXianhuiMeng();
DataList1.DataBind();
DataList2.DataSource = this.CreateDataSourceByXianhuiMeng();
DataList2.DataBind();
DataList3.DataSource = this.CreateDataSourceByXianhuiMeng();
DataList3.DataBind();
System.Data.DataView CreateDataSourceByXianhuiMeng()
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataR
dt.Columns.Add(new System.Data.DataColumn(&StudentID&, typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn(&学生姓名&, typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn(&语文&, typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn(&数学&, typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn(&英语&, typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn(&计算机&, typeof(System.Decimal)));
for (int i = 0; i & 20; i++)
System.Random rd = new System.Random(Environment.TickCount * i); ;
dr = dt.NewRow();
dr[0] = i.ToString();
dr[1] = &【孟子E章】& + i.ToString();
dr[2] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[3] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[4] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[5] = System.Math.Round(rd.NextDouble() * 100, 2);
dt.Rows.Add(dr);
System.Data.DataView dv = new System.Data.DataView(dt);
protected void DataList2_ItemDataBound(object sender, DataListItemEventArgs e)
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
if (e.Item.ItemIndex & 4)
e.Item.Controls[0].Visible =
protected void DataList3_ItemDataBound(object sender, DataListItemEventArgs e)
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
if (e.Item.ItemIndex & 4)
Label b = e.Item.FindControl(&txt&) as L
b.Parent.Controls.Remove(b);
&html xmlns=&http://www.w3.org/1999/xhtml&&
&head runat=&server&&
&title&&/title&
&form id=&form1& runat=&server&&
&asp:DataList ID=&DataList1& runat=&server&&
&ItemTemplate&
&%#Container.ItemIndex & 5 ?Eval(&学生姓名&):&&%&
&/ItemTemplate&
&/asp:DataList&
&asp:DataList ID=&DataList2& runat=&server& OnItemDataBound=&DataList2_ItemDataBound&&
&ItemTemplate&
&%#Eval(&学生姓名&)%&&/div&
&/ItemTemplate&
&/asp:DataList&
&asp:DataList ID=&DataList3& runat=&server&
OnItemDataBound=&DataList3_ItemDataBound&&
&ItemTemplate&
&asp:Label ID=&txt& runat=&server&&&%#Eval(&学生姓名&)%&&/asp:Label&
&/ItemTemplate&
&/asp:DataList&
已标记为答案
取消答案标记
已标记为答案
使用DateIndex判断就可以了
objectdatasource
getdata 调用的是 什么函数?自己在app_code 里面写一个 shared class (static class) 写一个函数代替
在函数里面取前5就好了
紫柔版主的头像真叫萌得一个不行啊。。。。
对不起 孟老师 我找不到这个DateIndex
您能不能说的更清楚写 如何用DateIndex绝不不懂装懂,不因为自己的问题低级而感到不好意思,踏踏实实的虚心学习。
DataTable fSourceData = this.E // 100 条记录
DataTable fTargetData = fSourceData.Clone(); // 准备取前 5
// 用 Id 从小到大排序取前 5
foreach (DataRow fDataRow in fSourceData.Select(&&, &Id ASC&))
if (fTargetData.Rows.Count & 5)
fTargetData.Rows.Add(fDataRow.ItemArray);
this.DataList1.DataSource = fTargetD
this.DataList1.DataBind();
是Container.DataItemIndex
DataTable fSourceData = this.E // 100 条记录
DataTable fTargetData = fSourceData.Clone(); // 准备取前 5
// 用 Id 从小到大排序取前 5
foreach (DataRow fDataRow in fSourceData.Select(&&, &Id ASC&))
if (fTargetData.Rows.Count & 5) break;
fTargetData.Rows.Add(fDataRow.ItemArray);
this.DataList1.DataSource = fTargetD
this.DataList1.DataBind();
objectdatasource 可不能这么用 需要变个形在 app_code
加入 top5.cs
[ponentModel.ponentModel.DataObjectMethodType.Select)]
public myDatarow[] GetTop5(MyDataTable tbl, string orderby)
myDatarow[] rv = new myDatarow[4];
Array.Copy(tbl.Select(string.Empty, orderby), rv, 5);
}这样编译后 ods
就可以找到
这个函数绑定紫柔版主的头像真叫萌得一个不行啊。。。。
孟老师 我已经知道 在控件上加入 &%# this.DataList5.Items.Count + 1%&
它产生了自动序号 但是我还是没明白您说的怎么判断下
谢谢同时谢谢 回复该帖的各位大大
谢谢。绝不不懂装懂,不因为自己的问题低级而感到不好意思,踏踏实实的虚心学习。
&%@ Page Language=&C#& AutoEventWireup=&true& Debug=&true& EnableEventValidation=&true& %&
&!DOCTYPE html PUBLIC &-//W3C//DTD XHTML 1.0 Transitional//EN& &http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&&
&script runat=&server&&
protected void Page_Load(object sender, EventArgs e)
DataList1.DataSource = this.CreateDataSourceByXianhuiMeng();
DataList1.DataBind();
DataList2.DataSource = this.CreateDataSourceByXianhuiMeng();
DataList2.DataBind();
DataList3.DataSource = this.CreateDataSourceByXianhuiMeng();
DataList3.DataBind();
System.Data.DataView CreateDataSourceByXianhuiMeng()
System.Data.DataTable dt = new System.Data.DataTable();
System.Data.DataR
dt.Columns.Add(new System.Data.DataColumn(&StudentID&, typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn(&学生姓名&, typeof(System.String)));
dt.Columns.Add(new System.Data.DataColumn(&语文&, typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn(&数学&, typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn(&英语&, typeof(System.Decimal)));
dt.Columns.Add(new System.Data.DataColumn(&计算机&, typeof(System.Decimal)));
for (int i = 0; i & 20; i++)
System.Random rd = new System.Random(Environment.TickCount * i); ;
dr = dt.NewRow();
dr[0] = i.ToString();
dr[1] = &【孟子E章】& + i.ToString();
dr[2] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[3] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[4] = System.Math.Round(rd.NextDouble() * 100, 2);
dr[5] = System.Math.Round(rd.NextDouble() * 100, 2);
dt.Rows.Add(dr);
System.Data.DataView dv = new System.Data.DataView(dt);
protected void DataList2_ItemDataBound(object sender, DataListItemEventArgs e)
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
if (e.Item.ItemIndex & 4)
e.Item.Controls[0].Visible =
protected void DataList3_ItemDataBound(object sender, DataListItemEventArgs e)
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
if (e.Item.ItemIndex & 4)
Label b = e.Item.FindControl(&txt&) as L
b.Parent.Controls.Remove(b);
&html xmlns=&http://www.w3.org/1999/xhtml&&
&head runat=&server&&
&title&&/title&
&form id=&form1& runat=&server&&
&asp:DataList ID=&DataList1& runat=&server&&
&ItemTemplate&
&%#Container.ItemIndex & 5 ?Eval(&学生姓名&):&&%&
&/ItemTemplate&
&/asp:DataList&
&asp:DataList ID=&DataList2& runat=&server& OnItemDataBound=&DataList2_ItemDataBound&&
&ItemTemplate&
&%#Eval(&学生姓名&)%&&/div&
&/ItemTemplate&
&/asp:DataList&
&asp:DataList ID=&DataList3& runat=&server&
OnItemDataBound=&DataList3_ItemDataBound&&
&ItemTemplate&
&asp:Label ID=&txt& runat=&server&&&%#Eval(&学生姓名&)%&&/asp:Label&
&/ItemTemplate&
&/asp:DataList&
已标记为答案
取消答案标记
已标记为答案
另请询问下孟老师和在数据集里加入一条top5查询相比
加查询和用上面的方法 那个性能更好些
是否数据量大的时候top5更节省资源
Container.ItemIndex 更节省资源
我的原意为 因为数据集里有一个 select *
且*正被其他控件调用
我正好要其top5
我想在不增加数据集的情况下 直接使用* 在显示上控制下 以节省资源
不知道我的想法是否合理谢谢孟老师的解答致礼
绝不不懂装懂,不因为自己的问题低级而感到不好意思,踏踏实实的虚心学习。
数据多时,最好选择在 SQL 中加入 Top5,这样可以避免对不显示行的处理知识改变命运,奋斗成就人生!
另请询问下各位老师和在数据集里加入一条top5查询相比
加查询和用上面的方法 那个性能更好些
是否数据量大的时候top5更节省资源
Container.ItemIndex 更节省资源
我的原意为 因为数据集里有一个 select *
且*正被其他控件调用
我正好要其top5
我想在不增加数据集的情况下 直接使用* 在显示上控制下 以节省资源
不知道我的想法是否合理谢谢孟老师的解答
谢谢X.X.Y致礼
绝不不懂装懂,不因为自己的问题低级而感到不好意思,踏踏实实的虚心学习。
你好,资源共用当然是很好想法咯, 但我觉得在这个问题上没有必要花太多时间来处理它再拖放一个 Top 5的过来绑定就好了,另外还有一个问题,最好不要用 Select * ,可以改为 Select Col1, Col2... 因为在数据量大时,Select * 和 Select 其中一部分列之间的效率是非常明显知识改变命运,奋斗成就人生!
知道了绝不不懂装懂,不因为自己的问题低级而感到不好意思,踏踏实实的虚心学习。
Microsoft 正在进行一项网上调查,以了解您对 Msdn 网站的意见。如果您选择参加,我们将会在您离开 Msdn 网站时向您显示该网上调查。是否要参加?
<input type="hidden" id="hdnTrackerText" value="请不要关闭此窗口。谢谢!完成访问时,调查将显示在此处,所以请不要关闭此窗口。" />
相关开发人员站点
其他 Windows 站点
来自西雅图的问候。怎么让datalist显示时不换行,而是跟在前一个控件后面呢?
[问题点数:20分]
怎么让datalist显示时不换行,而是跟在前一个控件后面呢?
[问题点数:20分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
相关帖子推荐:
本帖子已过去太久远了,不再提供回复功能。1 &asp:DataList ID="dlistPage" runat="server" RepeatColumns="4"
onitemcommand="dlistPage_ItemCommand"& 3
&ItemTemplate& 4
&asp:Table ID="Table1" runat="server"& 5
&asp:TableRow ID="TableRow1" runat="server"& 6
&asp:TableCell ID="TableCell1" runat="server"& 7
&div id="ImageBorder"& 8
&br /&&a border="0" href="ListBale.aspx?baleid=&%#Eval("baleid")%&"&&asp:Image ID="Image1" runat="server" ImageUrl='&%#Eval("baleimage") %&' Height="200" Width="110" /&&/a&&br /&&/div& 9
&/asp:TableCell&10
&/asp:TableRow&11
&asp:TableRow ID="TableRow2" runat="server"&12
&asp:TableCell ID="TableCell2" runat="server"&13
&div style="width:180px";& &a href='ListBale.aspx?baleid=&%#Eval("baleid")%&'&&%#Eval("baleName") %&&/a&&img src="&%#Eval("balelike")%&" height="17" /&&asp:Label14
ID="lblBaleId" runat="server" Text='&%#Eval("baleid")%&' Visible="False"&&/asp:Label&&/div&15
&/asp:TableCell&16
&/asp:TableRow&17
&asp:TableRow ID="TableRow3"
runat="server"&19
&asp:TableCell ID="TableCell3" runat="server"&20
价格:&asp:Label ID="Label1" runat="server" Text='&%#Eval("balePrice")%&'&&/asp:Label& 21
&asp:Label ID="Label3" runat="server" Text="会员价:" ForeColor="#E06601"&&/asp:Label&&asp:Label ID="Label2" runat="server" Text='&%#Eval("baleAssPrice")%&' ForeColor="#E06601"&&/asp:Label&22
&a href="AddCart2.aspx?baleid=&%#Eval("baleid")%&"&&img border="0" src="Image/content/List/car.png" /&&/a&23
&/asp:TableCell&24
&/asp:TableRow&25
&/asp:Table&26
&/ItemTemplate&28
&/asp:DataList&
我在是想加入购物车按钮事件里面获取当前物品的ID
因为分页的原因,我每次获取的物品ID应该就同才对,
Label&& b = (dlistPage.Items[0].FindControl("lblBaleId") as Label);
我开始的想法是
把&%#Eval("baleid")%&数据放在一个label里面
然后在后台找到个label
可是得到的text属性始终都是一个值!
所以我想解决这个问题!---在一个按钮事件里得到当前物品的ID号
我现在的解决方法是把加入购物车这个事件转到另一个页面去处理
这样跟我想要效果不大一样,所以不知道能不能在本页面就实现..
提问于: 15:05
&&&您需要以后才能回答,未注册用户请先。DataList控件中加入一个按钮,怎么样触发这个按钮的OnClick事件 我是要在这里面做添加的方法,直接双击按钮_百度知道
DataList控件中加入一个按钮,怎么样触发这个按钮的OnClick事件 我是要在这里面做添加的方法,直接双击按钮
提问者采纳
在DataList的RowComand事件里写,并在按钮的属性写&asp:Button ID=&Button1&
runat=&server& CommandName=&Add&/&之后在RowComand事件里取出CommandName的值,用e.CommandName得到,判断是不是Add,如果是就执行你添加的方法
提问者评价
其他类似问题
datalist的相关知识
按默认排序
其他1条回答
为的你button事件添加委托。
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 vs2010使用教程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信