datalist显示数据(急,在线等)

datalist显示数据(急,在线等),第1张

datalist显示多少数据来自己你绑定的数据源,假设数据源有十条数据,绑定到datalist后默认就会显示十条数据。你也可以对datalist进行设置编辑,决定显示那几个字段的数据或对datalist进行分页设置,比如控制每页只显示5条数据,多余的数据做为第二页显示。参考一下MSDN,查一下datalist控件说明相信会对你有帮助的。

你是想说类似点击分页刷新数据吗?如果只是说用datalist来绑定跟所传参数相关的数据时,可以这样

方法一:刷新本页(整个页面),那么在page_load()事件中绑定数据,传参至本页就行

方法二:局部刷新datalist,用框架<frameset><frame></frame></frameset>来套用方法一中的页面,传参触发指向这个页面就行

因为不知道你什么语言编程,所以不给出具体代码了,大概思路是这样。另外绑定数据(page_load()事件中写的)大概步骤就是1根据传过来的参数写t_sql查询语句;2建立连接数据库的通道;3用前二者实例化执行对象(command);4读取数据并保存到表或实体集中;5把4中的数据交给datalist的datasource;6datalist执行bingdata()来绑定数据集

很好

using System;

using SystemData;

using SystemConfiguration;

using SystemWeb;

using SystemWebSecurity;

using SystemWebUI;

using SystemWebUIWebControls;

using SystemWebUIWebControlsWebParts;

using SystemWebUIHtmlControls;

public partial class _Default : SystemWebUIPage

{

DBHelper db = new DBHelper();

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

pagesize();

//DBHelper db = new DBHelper();

//GridView1DataSource = dbGetAllBook();

//GridView1DataBind();

}

}

protected void Button1_Click(object sender, EventArgs e)

{

DBHelper db = new DBHelper();

GridView1DataSource = dbGetBook(intParse(TextBox1Text));

GridView1DataBind();

}

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)

{

DBHelper db = new DBHelper();

GridView1PageIndex = eNewPageIndex;//把新获得索引设置为当前页的索引

GridView1DataSource = dbGetAllBook();

GridView1DataBind();

}

public void pagesize()

{

PagedDataSource page = new PagedDataSource();//封装数据,绑定控件

pageDataSource = dbGetAllBook()Tables[0]DefaultView;//指定数据源,而datasource这个控件不能直接来绑定数据而只能绑定视图

pageAllowPaging = true;//是否启动分页

pagePageSize = 5;//行数

pageCurrentPageIndex = intParse(thislbl_pagecurentText)-1;//设定或获取当前页的索引

lbl_countText =pagePageCountToString();//获取显示数据源中的所有项所需要的总页数

int pagecurent = intParse(thislbl_pagecurentText);//定义一个变量来获取当前第几页(lbl_pagecurent)

GridView1DataSource = page;//前后两句都是用来绑定数据源的

GridView1DataBind();

//lbl_pagecurent当前第几页 lbl_count总共第几页

//LinkButton1首页 btn_prev上一页 btn_next下一页

//LinkButton4末页 TextBox2 跳转到第几页

if (pagecurent==1)

{

btn_prevEnabled = false;

}

else

{

btn_prevEnabled = true;

}

if (pagecurent==pagePageCount)

{

btn_nextEnabled = false;

}

else

{

btn_nextEnabled = true;

}

}

protected void btn_prev_Click(object sender, EventArgs e)

{

int i = intParse(thislbl_pagecurentText) - 1;

thislbl_pagecurentText = iToString();

pagesize();

}

protected void btn_next_Click(object sender, EventArgs e)

{

int i = intParse(thislbl_pagecurentText) + 1;

thislbl_pagecurentText = iToString();

pagesize();

}

protected void LinkButton1_Click(object sender, EventArgs e)

{

lbl_pagecurentText = "1";

pagesize();

}

protected void LinkButton4_Click(object sender, EventArgs e)

{

lbl_pagecurentText = thislbl_countText;

pagesize();

}

protected void Button3_Click(object sender, EventArgs e)

{

thislbl_pagecurentText = thisTextBox2Text;

pagesize();

这是分页的整个源代码,有的括号掉了,你自己去看一下吧

这个是会显示不出,前台的换成如下就好了 <asp:DataList ID="dt1" runat="server" RepeatColumns="4" RepeatDirection="Vertical">

<ItemTemplate>

<table>

<tr>

<td style="width: 215px; height: 150px">

<img src="<%# Eval("IMG") %>" Width="140px" />

</td>

</tr>

<tr>

<td style="width: 215px; height: 30px">

<%# Eval("P_Name") %>

</td>

</tr>

</table>

</ItemTemplate>

</asp:DataList>

分类: 电脑/网络 >> 程序设计 >> 其他编程语言

问题描述:

我用ADODC读取了一个表的ID和NAME两个值

我想在DATACOMBO中只显示NAME值

但选择后只需要取NAME对应的ID值,而不要NAME值

例如

读取了:

ID NAME

1 ABC

2 DEF

3 GHI

我的DATACOMBO显示:

ABC

DEF

GHI

在选择ABC之后只需要返回那个1而不要ABC

或者在选择DEF之后只需要2而不要DEF

怎么实现?

解析:

使用数据绑定控件DataCombo和DataList

徐晓峰

在Visual Basic 6.0中有一组数据绑定控件,可以用于快速方便地建立数据编辑的界面。我们介绍一下DataCombo和DataList这两个数据绑定控件。这两个控件与标准的ComboBox和ListBox的外表、行为都非常相似,且这两个控件彼此也很相似。它们的区别是:DataCombo中可以选择和输入数据,而DataList只能用于数据的选择。由于两者的相似性,我们在下面的例子中以DataCombo为主。

在一个典型的应用中,我们经常需要使用对某一对象的编号。例如,VB6.0提供的Biblio数据库在一个叫做“Publishers”的表中存放着各出版公司的名称。这个表有很多字段,包括地址、城市、邮码、电话等,其中有两个基本字段Name和PubID字段。Name字段存放出版商的名称,而PubID字段是对每个出版商的编码。

Biblio数据库中另一个表为“Titles”,包含的信息有标题、出版年份、国际标准书号ISBN等。在这些字段中有一个字段的名称就是“PubID”。这个字段的名称与Publishers表中的相应字段的名称相同,因为这个字段代表了一本出版物的出版商。

这是在数据库开发中常用的一个对对象进行编码的方法,但是由此也带来了一个问题:用户在数据库应用程序中输入和编辑数据时,必须用某种方法输入标识出版商的数字编号。DataCombo和DataList控件就可以轻松地解决这个问题。

在这个应用中,我们使用了一个DataCombo控件dbcPublisher。我们希望的结果是:在dbcPublisher中看到的是所有出版商的名字,然后可以在这个控件中选择一个出版商,而这个控件可以自动将这个出版商的编码PubID(不是显示的名字)输入到Titles表的PubID字段中。这儿涉及了两个结果集,一个是出版商的编码和名字rsPublisher,另一个是和Titles相对应的结果集rsTitles。样本代码如下:

Dim rsPublisher As NewADODB.Recordset

Dim rsTitles As New ADODB.Recordset

Dim sSQL As String

sSQL=〃Select PubID,Name from Publishers〃

rsPublisher.Open sSQL,,adOpenStatic,adLockReadOnly

sSQL=〃Select Title,PubID,ISBN from Titles〃

rsTitles.Open sSQL,,adOpenStatic,adLockOptimistic

With dbcPublisher

Set.RowSource=rsPublisher

.ListField=〃Name〃

.BoundColumn=〃PubID〃

Set.DataSource=rsTitles

.DataField=〃PubID〃

EndWith

从这个例子中,我们可以看到dbcPublisher所显示的内容来自于rsPublisher的Name字段,由RowSource属性和ListField属性指定;而用户使用中如果选定了某个出版商,则自动将对应的rsPublisher的PubID字段的值去修改目的结果集,这个字段由BoundColumn属性指定;目的结果集和被修改的字段是rsTitles的PubID字段,由DataSource属性和DataField属性指定。另外还有一个属性是BoundText,它的值是BoundColumn指定的字段的值。

DataCombo和DataList控件的使用方法是很简单的,便于快速的应用开发。关于这两个控件的其他详细信息,可以参考MSDN Library中的详细说明。

你的这个问题未必是后台数据data没返回;

你可以在返回成功里加个判断;

success:function(data){

if(data==null)

{

alert("not get message!");

}

else

{

alert(data);

}

}

如果接收成功则可以解析;用eval表达式或者JSONparse(data)方法都可以,重要的是你是个多条数据,要循环获取:

var obj[]=eval("("+data+")");

for(var i=0;i<objlength;i++)

{

dataListappend("<tr><td align='right'>areaId</td><td>"+obj[i]areaId+"</td></tr>");

}

如果这一部也没错,就是你追加的地方有错,那就自己慢慢调HTML吧!

以上就是关于datalist 显示数据(急,在线等)全部的内容,包括:datalist 显示数据(急,在线等)、asp.net datalist 怎么通过参数传递来显示数据(最简单的方法)、ASP.NET问题,datalist设置了分页,想要导出全部数据,需要怎么做呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9318172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存