Ext.onReady(function(){
//format the display data
var formatcustomer = function(value, cellmeta, record, rowIndex){
return record.data['cangdiancode']+'-'+record.data['cangdianname'];
}
function renderswsdateship(value, p, record){
value=formatDateStr(value);
return String.format('{0}', value, record.data['excerpt']);
};
function formatDateStr(date)
{
try{
var str="";
str=date.getFullYear()+"-";
str+=(((date.getMonth()+1)>=10)? (date.getMonth()+1):"0"+(date.getMonth()+1))+"-";
str+=(date.getDate()>=10)? date.getDate():"0"+date.getDate();
str+=" ";
str+=((date.getHours()>=10)? date.getHours():"0"+date.getHours())+":";
str+=((date.getMinutes()>=10)? date.getMinutes():"0"+date.getMinutes())+":";
str+=(date.getSeconds()>=10)? date.getSeconds():"0"+date.getSeconds();
return str;
}catch(e){
throw e;
}
}
function formatdatestring(value){
return value.substring(0,10);
}
var formatstatus = function(value){
if(value=="1")
return "未啟用";
if(value=="2")
return "已啟用";
if(value=="3")
return "禁用";
}
function renderoperate(value, cellmeta, record, rowIndex, columnIndex, store) {
//Ext.Msg.alert("msg",record.data['swsNbr']);
//var str = "<input type='button' value='查看详细信息' onclick='alert(\"" +
// "这个单元格的值是:" + value + "\\n" +
//"这个单元格的配置是:{cellId:" + cellmeta.cellId + ",id:" + cellmeta.id + ",css:" + cellmeta.css + "}\\n" +
//"这个单元格对应行的record是:" + record + ",一行的数据都在里边\\n" +
//"这是第" + rowIndex + "行\\n" +
//"这是第" + columnIndex + "列\\n" +
// "这个表格对应的Ext.data.Store在这里:" + store + ",随便用吧。" +
// "\")'>";
var str = "<a href=\"javascript:View_Search('"+record.data['swsNbr']+"')\"><img src='../images/custom/search.gif' width='15' height='13' border='0' alt='View'></a>";
str= str+" <a href='#' onClick=\"printURI1('/inc/print_select1.jsp?URI=/Inventory/inventory_in_print.jsp?swsnbr="+record.data['swsNbr']+"')\"><img src='../images/custom/print.gif' width='13' height='14' border='0' alt='Print'></a> ";
return str;
}
//--------------------------start----------------------------
var storeParams = {
params : {
start : 0,
limit : 10
}
};
var sm = new Ext.grid.CheckboxSelectionModel();
// Process grid start
var cm = new Ext.grid.ColumnModel(
[sm, {
header : "序號",
width : 50,
renderer:function(value, cellmeta, record, rowIndex){
return rowIndex + 1;
},
align : 'center'
}, {
id : 'cangdiancode',
header : "倉點編號",
width : 100,
dataIndex : 'cangdiancode',
align : 'right'
}, {
header : "倉點名稱",
width : 120,
dataIndex : 'cangdianname',
align : 'center'
},
{
header : "所屬客戶",
width : 150,
dataIndex : 'custname',
renderer: formatcustomer,
align : 'center'
},
{
header : "啟用日期",
width : 100,
dataIndex : 'createdate',
//renderer:renderswsdateship,
renderer:formatdatestring,
align : 'center'
}, {
header : "負責人",
width : 75,
dataIndex : 'chargeman',
align : 'center'
}, {
header : "目前狀態",
width : 100,
dataIndex : 'status',
renderer:formatstatus,
align : 'center'
}]
);
var processreader = new Ext.data.JsonReader({
totalProperty : "totalSize",
root : "data"
}, Ext.data.Record.create([{
name : "cangdiancode",
type : "string"
}, {
name : "cangdianname",
type : "string"
}, {
name : "custname",
type : "string"
}, {
name : "createdate",
type: 'string'
}, {
name : "chargeman",
type : "string"
}, {
name : "status",
type : "string"
}]));
var processproxy = new Ext.data.HttpProxy({
url : '../cangdianList.action'
});
var processstore = new Ext.data.Store({
proxy : processproxy,
reader : processreader
});
var pagingBar = new Ext.PagingToolbar({
pageSize : 10,
store : processstore,
displayInfo : true,
displayMsg : '显示记录 {0} - {1} of {2}',
emptyMsg : "没有记录",
items : ['-']
});
var processgrid = new Ext.grid.GridPanel({
id : 'processPanel',
el:'mygrid',
store : processstore,
cm : cm,
sm : sm,
//title : '流程列表',
//region : 'center',
autoExpandColumn : 'cangdiancode',
//stripeRows : true,
bbar : pagingBar
});
processgrid.render();//不可以在gridpanel中renderTo,数据会看不见的,要用grid.render()
processstore.load(storeParams);
});
//其中返回的JsonResult是类似如下的字符串
{totalSize:8,data:[{cangdiancode:'VMI-052-001',cangdianname:'仓点52',custname:'052',createdate:'2009-05-06
00:00:00.0',chargeman:'Samsung HK',status:'2'},{cangdiancode:'VMI-006-001',cangdianname:'Eurocir VMI
倉點 ',custname:'006',createdate:'2009-04-24 00:00:00.0',chargeman:'Eurocir',status:'1'},{cangdiancode
:'VMI-005-001',cangdianname:'仓点四',custname:'005',createdate:'2009-04-28 00:00:00.0',chargeman:'LGEHZ_AUD'
,status:'2'},{cangdiancode:'VMI-004-001',cangdianname:'004-001 ',custname:'004',createdate:'1900-01-01
00:00:00.0',chargeman:'LGEHZ_CDR',status:'2'},{cangdiancode:'VMI-003-001',cangdianname:'仓点三 ',custname
:'003',createdate:'2009-04-28 00:00:00.0',chargeman:'Vtech',status:'2'},{cangdiancode:'VMI-002-001',cangdianname
:'TEST',custname:'002',createdate:'2009-04-28 00:00:00.0',chargeman:'UPI',status:'2'},{cangdiancode:'VMI-001-002'
,cangdianname:'仓点二 ',custname:'001',createdate:'2009-04-28 00:00:00.0',chargeman:'Uniden',status:'3'
},{cangdiancode:'VMI-001-001',cangdianname:'仓点一',custname:'001',createdate:'2009-04-28 00:00:00.0',chargeman
:'Uniden',status:'2'}]}
分享到:
相关推荐
10. **学习路径**:对于不懂JavaScript的开发者,首先要掌握JavaScript基础知识,然后逐步学习EXT2.0的API和设计理念,通过实例练习来提升技能。 EXT2.0虽然现在已经被更先进的EXTJS版本取代,但其基础概念和核心...
### Ext2.0框架的Grid使用介绍 #### 一、Ext2.0框架概述 Ext2.0是一款基于JavaScript的库,它提供了大量的用户界面组件,使得开发人员能够轻松地构建出高度交互式的Web应用程序。相比其他框架如YUI等,Ext2.0拥有...
### Ext2.0框架的Grid使用详解 #### 引言 在前端开发领域,Ext2.0框架以其强大的功能和灵活的组件库而备受推崇,尤其是其Grid组件,更是前端开发者构建美观、交互性强的数据展示界面的利器。本文将深入探讨Ext2.0...
GridPanel的xtype为grid,这意味着开发者可以在使用Ext JS的类管理器时,通过简短的'grid'来创建一个新的GridPanel实例。 在ExtJS中使用GridPanel首先需要定义列信息和数据存储器Store。列信息由类Ext.grid....
在本实例中,我们将探讨EXT 2.0技术如何应用于创建一个JSP留言板。 EXT的核心在于其组件模型,它包括了各种UI元素,如表格、树形视图、按钮、面板等。在JSP留言板应用中,EXT可能被用来构建以下几个关键部分: 1. ...
通过《掏钱学Ext》这本教程,读者将有机会深入了解EXT 2.0的这些核心特性,并通过实例学习如何在实际项目中应用。教程不仅讲解理论知识,还会包含大量代码示例和实战练习,以确保读者能够快速上手并熟练运用EXT进行...
本资料包包含"Ext中文手册"和"ExtJS 2.0实用简明教程",将帮助你深入理解和熟练运用ExtJS。 **Ext中文手册**: 该手册是ExtJS的中文版文档,全面覆盖了ExtJS的各种组件、类库、事件和方法。手册中详细解释了如何...
### Ext2.0框架的Grid使用介绍 #### 一、Ext2.0框架概述 Ext2.0是一款基于JavaScript的库,它提供了丰富的用户界面组件和API,使得开发者能够快速地构建出高度交互性的Web应用。与其他框架如YUI相比,Ext2.0拥有...
而Ext.NET 2.0是基于ASP.NET的控件库,它封装了ExtJS的功能,使得在.NET环境中使用ExtJS变得更加方便。 跨行合并通常涉及到表格中的单元格合并,这在数据展示时可以有效地节省空间,突出显示特定的数据组。在ExtJS ...
2. **使用Ext.onReady**: `Ext.onReady`是一个关键的入口点,用于在DOM准备就绪时执行应用程序代码。可以传入一个函数,这个函数会在DOM加载完成后被调用。例如,可以使用匿名函数来显示一个警告框,提示EXT_JS库...
在本文中,我们将深入探讨如何使用第三方控件Coolite,特别是关于Ext2.0框架的Grid控件。Ext2.0是一个JavaScript库,它提供了强大的数据展示能力,支持多种数据格式,如二维数组、JSON、XML,以及自定义数据类型。...
在ExtJS 2.0中,Model用于定义数据结构和行为,而Store则作为数据容器,负责管理一组Model实例。Store支持远程数据加载,可以与服务器通过Ajax进行通信,实现分页、排序、过滤等功能。 **4. GridPanel** GridPanel...
2. **Ext.Window** 代表一个弹出式的窗口,通过`show()`函数显示窗口内容。 3. **Ext.Panel** 是EXTJS中基础的容器组件,通过`render()`函数将其渲染到指定的DOM元素上,通常传入的是一个ID。 4. **JSON定义组件...
2. **创建控件**:通过调用对应的构造函数,例如`new Ext.Panel()`或`new Ext.grid.GridPanel()`,可以在页面上实例化一个控件,并传递配置参数以定制其行为和外观。 3. **使用底层API**:在需要的地方,可以直接...
结果通常会以数据网格(Data Grid)的形式展示,`Ext.grid.GridPanel`为此提供了丰富的功能,如分页、排序、过滤等。你需要创建一个数据存储(Store)对象,连接到服务器端的接口,获取查询结果。然后将这个存储...
这段代码中定义了一个包含多个列的网格(`grid`),并通过`Ext.data.Store`实例来管理数据。其中`getPager`函数用来创建分页工具栏。 #### 四、总结 通过上述步骤,我们成功实现了使用Struts2框架、JSON数据格式以及...
在提高篇的第二十六篇,讲解了如何打造Ext.form.ComboBox系列,主要涉及的是静态绑定。ComboBox是EXTJS中一种常用的数据输入控件,它允许用户从下拉列表中选择值,也可以手动输入。静态绑定意味着ComboBox的数据是...