Extjs动态改变window的内容和fbar,实现类似翻页的导航。

今天做项目时,经理要求我实现win上的翻页功能,通过标题进行上一页和下一页的导航功能,查阅了相关资料后,实现了如下的效果,当标题超过20个字符时,进行截取,并加上省略号。

动态改变win内容的思路:先通过win获取到存放内容的panel,然后将panel中调用panel的removeAll()方法,将panel中所有内容移除掉(如果不remove的话,点击下一条的内容会追加到本页内容的下面),然后将新的内容追加到panel中。

获取到win的核心代码如下:

var content = App.AnnouncementLoginHTMLWin(win.result[0].content);//获取panel中应该放入的最新内容
var panel = win.find('itemId','contentItemId')[0];
panel.removeAll();
panel.add({

xtype:'label',

html: content

});
win.doLayout();

动态改变fbar内容的思路:先通过win获取到toolbar,然后再获取到button,通过调用button的setText()方法,动态的改变按钮的text内容。核心代码如下:

var toolbar = win.getFooterToolbar();
var preBut = toolbar.findByType('button')[0];
//动态改变上一页的值
if(preText == ""){
preBut.setText("<font size=2>上一条:</font><font color='red'>没有记录了</font>");
}else{
preText = App.replaceStr(preText,win.strLen);
preBut.setText("<font size=2>上一条:</font><font color='blue'>"+preText+"</font>");
}
//动态改变下一条的值
var nextBut = toolbar.findByType('button')[1];
if(nextText == ""){
nextBut.setText("<font size=2>下一条:</font><font color='red'>没有记录了</font>");
}else{
nextText = App.replaceStr(nextText,win.strLen);
nextBut.setText("<font size=2>下一条:</font><font color='blue'>"+nextText+"</font>");
}
/**
 * 判断字符串长度,如果大于num则后面的用省略号表示
 */
App.replaceStr=function(str,num){
//如果字符串长度没有超过指定长度,则不截串
if(str.length<=num){
return str;
}else{
str = str.substring(0,num)+"...";
}
return str;
}
在实现过程中,遇到过一个问题,就是传递到html中的内容是&lt;div align=&amp;quot;center&amp;quot;&gt;这种格式的,放入html中后,ext自动编译成了<div>这种格式,但是这不是我想要的结果,我想要的是html自动将<div>样式识别后的样式。最后在将 &lt;div align=&amp;quot;center&amp;quot;&gt;这种格式的字符串传递给html前,先用Ext.util.Format.htmlDecode(content) 对内容进行转码,转换成<div>这种样式后,再将转后的字符串传递给html,html就能识别<div>,并能正确的显示样式了

Extjs动态改变window的内容和fbar相关推荐

  1. android 动态改变listview的内容

    本文模拟:点击一个按钮,为已有的listview添加一行数据 <?xml version="1.0" encoding="utf-8"?> < ...

  2. Extjs 动态改变列名

    列名与对应的值是动态改变的,也就是说要展示的列名可能随时改变. 首先选择了默认的列作为显示,在tbar中加入一个按钮弹出所有可能要显示的列名,选择后将对应的列名与值显示在grid中,例如 身份证号码  ...

  3. 通过修改 DOM 的文本内容,动态改变网页的内容。

    innerText 将文本内容添加/更新到任意标签位置,文本中包含的标签不会被解析. <script>// innerText 将文本内容添加/更新到任意标签位置const intro = ...

  4. js动态改变下拉菜单内容示例 .

    <HTML><HEAD><TITLE>动态改变下拉菜单内容示例</TITLE></HEAD><SCRIPT LANGUAGE=java ...

  5. android string.format()长度,Android通过String.format格式化(动态改变)字符串资源的显示内容...

    一.实现效果: 最近在项目中需要做类似于上图显示的效果,里面的数字和称谓是动态获取的,对于这种显示效果,有如下两种解决方案来处理: (1)通过代码动态设置TextView的内容,比如: /** * 显 ...

  6. C#动态改变BarTender模板中的内容

    零.新建BarTender模板和设置需动态填充内容的组件属性 请参考:获取BarTender10.1和新建一个BarTender模板 一.实现效果 C#动态改变BarTender模板中内容的项目工程源 ...

  7. html如何修改span的值,如何动态改变div span的内容

    本文介绍了javascript动态改变div span的内容的教程,希望能帮助到大家 先看一个实例 对span的控制 与div类似,但是它是按照行来显示的,看下面的代码: function chage ...

  8. 实现div的大小随着内容进行动态改变

    div的动态改变有两种方式: 1.使用百分比的形式来实现div的动态改变的实现代码: #id{width: 30%;height: 40%; } /* 这样一来,该div的宽度和高度将始终分别对应于浏 ...

  9. html动态资源加载进度,JavaScript_快速解决js动态改变dom元素属性后页面及时渲染的问题,今天实现一个进度条加载过程 - phpStudy...

    快速解决js动态改变dom元素属性后页面及时渲染的问题 今天实现一个进度条加载过程,dom结构其实就是两个div 控制里层div的宽width属性,就能实现进度条往前走的效果. 我的进度条是显示下载文 ...

最新文章

  1. 学python需要什么-想要学人工智能需要学些什么python的知识
  2. 洛谷1020导弹拦截
  3. 【软考】 2019年上半年软件设计师考试上午真题(专业解析+参考答案)
  4. Asp.net的HTTP请求处理过程
  5. ASP.NET (C#开发环境)Request对象 之 ServerVariables集合
  6. 01.mac下安装配置maven
  7. Android控件系列之RadioButtonRadioGroup(转)
  8. Oracle / PLSQL函数 - LENGTH和LENGTHB
  9. 小程序毕设作品之微信酒店预订小程序毕业设计(1)开发概要
  10. 正则表达式小Tips
  11. WPF老矣,尚能饭否——且说说WPF今生未来(下):安心
  12. 联想新计算机开机黑屏,联想笔记本电脑开不了机 联想笔记本电脑开机黑屏怎么办...
  13. Pi-hole黑洞(广告屏蔽)列表的维护思路
  14. memcmp的用法 详讲
  15. Tina-TI——小巧好用又高效的原理图仿真软件
  16. Senparc.Weixin.MP SDK 微信公众平台开发教程(五):使用Senparc.Weixin.MP SDK
  17. 制作人 Joe Carrell 教你充分释放TB12音色野兽
  18. NLP自然语言处理学习笔记(三)(转自咕泡AI)
  19. 神州战神系列装系统过程,其他电脑大同小异
  20. 12. 查询表product——查询库存商品中,最高单价、最低单价分别是多少

热门文章

  1. 枚举Windows进程中模块的几种方法-PEB内核结构详解
  2. 利用Arduino Uno进行电压电流和温度采集,请教程序问题。
  3. win10 右键文件夹卡死
  4. 修改chrome浏览器背景颜色为保护颜色
  5. 滴滴开源AoE:一种快速集成AI的终端运行环境SDK
  6. vue-cli项目引入字体包
  7. C and C++ Common Knowledge
  8. 学会这 10000 个段子,成为 IT 职场幽默达人。Python 爬虫小课 8-9
  9. kafka文档(3)---- 配置选项翻译
  10. 我的世界1.72 Java下载_我的世界1.7.2java下载 java路径有误怎么设置