提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|其它|编辑:郝浩|2011-08-25 14:35:11.000|阅读 765 次
概述:在上一篇中写到了利用jquery 的ajax方式读取分页器页码显示到页面上。这一篇我讲接着写利用json读取数据以及和分页器绑定实现无刷新的分页效果。在上一篇中 写到 页面的js 中有个 BindCommentList(1);//页面加载默认绑定第一页数据 方法。参数为当前页码。页面首次加载赋默认值1,即加载第一页的数据。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
在上一篇中写到了利用jquery 的ajax方式读取分页器页码显示到页面上。这一篇我讲接着写利用json读取数据以及和分页器绑定实现无刷新的分页效果。
在上一篇中 写到 页面的js 中有个 BindCommentList(1);//页面加载默认绑定第一页数据 方法。参数为当前页码。页面首次加载赋默认值1,即加载第一页的数据。
然后在 分页器 中 a 标签 点击的时候还会 触发 BindCommentList js事件。参数就从 点击的 a 标签 的属性 title 取值,表示页码,BindCommentList 事件代码如下:
//根据当前页读取数据
function BindCommentList(page) {
$.post("/Ajax/Elec_Comment/GetData.aspx", { pid: '<%=DotNet.Framework.Common.QueryString.QId("id") %>', page: page },
function(data) {
var Comments = $.parseJSON(data);
$("#divCommentList").empty();
for (var i = 0; i < Comments.length; i++) {
var comment = Comments[i];
var span = "<span class=\"hsk\"><span>" + comment.id +
comment.NickName + "</span><span>来自" +
comment.CommentIP + "</span> <span>" + comment.CommentDate
+ "</span></span><span class=\"pl_text\">" +
comment.CommentBody + "</span>"
$("#divCommentList").append(span);
}
}
);
}
可以看到 ajax 请求页面为 /Ajax/Elec_Comment/GetData.aspx ,传过去2个参数,pid 是对应的产品ID(此示例演示的是 产品 评论的无刷新效果实现),还有一个page 参数,表示 当前页码。彩票走势图加载 page=1 ,当点击分页页码之后传过去的 page 值 是从 a 标签的 title 属性中读取。具体如何实现请参考上一篇文章 传送门
jquery 的 post 方法 会返回请求结果,如上代码 中 的 data .这个 data 返回的是一个 json 格式的数据。他是一个 List<T> 泛型集合。
$("#divCommentList").empty(); 是清空 评论列表的 div 中的内容。。然后遍历 返回结果。 利用 json 将返回数据 解析 并且拼接成 html 最后重新追加到 divCommentList div 中。 。。。
接下来看一下 ajax 方法请求的页面 /Ajax/Elec_Comment/GetData.aspx 如何实现将查询出来的列表 序列化为 json 对象 代码如下:
public partial class GetData : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
int page = DotNet.Framework.Common.QueryString.StrToId
(DotNet.Framework.Common.QueryString.F("page"));
int pid = DotNet.Framework.Common.QueryString.StrToId
(DotNet.Framework.Common.QueryString.F("pid"));
GSSS.HTML.BLL.PromotionZone.ElectronicProducts.T
_ElectronicProducts_Comment bll =
new GSSS.HTML.BLL.PromotionZone.ElectronicProducts.
T_ElectronicProducts_Comment();
if (page == 0)
{
page = 1;
}
DataSet data = bll.GetPageData(page, pid);
List<commm> list = new List<commm>();
if (data == null || data.Tables.Count == 0 || data.Tables[0].Rows.Count == 0)
{
Response.Write("暂无评论");
Response.End();
}
commm model = null;
foreach (DataRow row in data.Tables[0].Rows)
{
model = new commm()
{
CommentBody = row["CommentBody"].ToString(),
CommentIP = row["CommentIP"].ToString(),
CommentDate = row["CommentDate"].ToString(),
CommentRate = row["CommentRate"].ToString(),
Email = row["Email"].ToString(),
id = row["id"].ToString(),
NickName = row["NickName"].ToString(),
ProdictID = row["ProdictID"].ToString(),
};
list.Add(model);
}
JavaScriptSerializer jss = new JavaScriptSerializer();
Response.Write(jss.Serialize(list));
Response.End();
}
}
public class commm
{
public string CommentBody { get; set; }
public string CommentIP { get; set; }
public string CommentDate { get; set; }
public string CommentRate { get; set; }
public string Email { get; set; }
public string id { get; set; }
public string NickName { get; set; }
public string ProdictID { get; set; }
}
评论中有 评论时间 字段。。他是 DataTime 类型,起初本想直接从数据库中读取 DataTable 序列化成 Json对象返回,发现无法转换,后来换成 List<T> 泛型。返回之后由于序列化的原因。DataTime 类型的数据我不晓得要怎么解析,干脆直接返回字符串形式的。于是新建一个类 commm ,类结果和 产品评论 实体类 结果差不多,只是省略掉了页面上用不到的数据。
取出来的 DataTable 数据通过 遍历 添加到 了 List 集合中。。然后将List集合序列化为 Json 对象 返回给客户端,代码如下:
JavaScriptSerializer jss = new JavaScriptSerializer();
Response.Write(jss.Serialize(list));
Response.End();
到此。一个无刷新分页的效果就实现了。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
文章转载自:博客园面对“数字中国”建设和中国制造2025战略实施的机遇期,中车信息公司紧跟时代的步伐,以“集约化、专业化、标准化、精益化、一体化、平台化”为工作目标,大力推进信息服务、工业软件等核心产品及业务的发展。在慧都3D解决方案的实施下,清软英泰建成了多模型来源的综合轻量化显示平台、实现文件不失真的百倍压缩比、针对模型中的大模型文件,在展示平台上进行流畅展示,提升工作效率,优化了使用体验。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢