- 浏览: 453949 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (211)
- java (37)
- spring相关 (3)
- struts (10)
- 面试 (1)
- jsp/servlet (18)
- 持久化框架 (1)
- IT相关新闻 (3)
- 服务器 (11)
- 插件 (4)
- pushlet (3)
- js (24)
- oracle (29)
- mysql (9)
- hibernate (5)
- 开发工具 (6)
- jquery (6)
- 页面标签jstl,el (1)
- linux (25)
- 英语 (1)
- log4j (1)
- html/css (6)
- sqlserver (2)
- dwr (1)
- 设计模式 (4)
- vmware (2)
- office (1)
- eclipse (5)
- svn (1)
- webservice (1)
最新评论
-
18335864773:
建议使用 pageoffice 组件套红
js操作word套红 -
lopez:
数据库系统的客户程序只要向数据库系统声明了一个事务,数据库系统 ...
Hibernate事物控制与管理 -
liujq4512:
删了还是没用
An internal error occurred during: "Initializing Java Tooling". -
elaine0111:
非常感谢这篇文章,嘿嘿,解决了我的问题。我把这段代码保存在我的 ...
Js设置文本框中焦点位置在最后 -
weishuguangeye:
不错!
单例模式(Singleton)
tablesObj.Cell(行, 列).Split(1,3);//将某行某列单元格拆分成一行三列
2>tablesObj.Cell(行,列).Merge(tablesObj.Cell(行,列));//合并某行某列到某行某列。
3>tablesObj.Cell(行,列).Range.Text//给单元格赋值。
4>tablesObj = this.office.obj.ActiveDocument.Tables(1);//得到表格
5> tablesObj.rows(fixlength+uselength+1).Borders(2).LineStyle=0;//左边虚线0,实线1,其中1 上 2左 3下 4右,常用于连续添加WORD表格的情况
6> tablesObj.Rows(行).Delete();//删除行,注意:只有未合并列的情况下才能进行删除。
7> tablesObj.Cell(行, 列) .Font.Name=”宋体” //字体设置,同样还有.Font.Size字体大小等。
8> tablesObj.Cell.ParagraphFormat.Alignment= align;//居中对齐
以下代码实现如图功能:
思路如下:
1、加载模板,模板如图:
2、往第二三行所有需要赋值的单元格赋父页面取到的值。
3、循环新增加行填充后台取到的使用情况数据。
4、拆分单元格,3列拆成5列。
5、循环新增加行,并循环填充后台取到的数据。
6、如果行数为添加值长度-1则不再增加行(如果不做这个,最后会多一行)
7、合并列。
关键方法代码(貌似不准加):
this.fillData = function() {
//下面的值是从父页面拿到的。
var datas = this.getPageData().data;
var numberplate = datas.numberplate;//车辆号码
var vehicletypeid =datas.vehicletypeid;//车辆型号
var displacement=datas.displacement;//排气量
var buyprice=datas.buyprice;//价格
var buystime=datas.buystime.substring(0,10);//购买时间
var suiche=datas.suiche;//随车配置
var id=datas.ids;//车辆ID
var sumyear=new Array();
var summile=new Array();
var tablesObj = this.office.obj.ActiveDocument.Tables(1);//得到表格
debugger;
//以下取使用情况数据,从后台拿的Result数据
var useyear=this.request('LBIPVehicleyear',{id:id}) ;
if(useyear==null){
alert("没有使用数据!");
return;
}
var useyeardata=LEAP.convertResult(useyear);
if(useyeardata!=null){
for(var i=0;i<useyeardata.length;i++){
sumyear[i]=useyeardata[i].sumyear;
summile[i]=useyeardata[i].summile;
}
}
var uselength=useyeardata.length;
//以下取维修数据,从后台拿的Result数据
var fixVehicle=this.request('getfixVehicle',{id:id})
if(fixVehicle==null){
alert("没有维修数据!");
return;
}
var fixVehicledata=LEAP.convertResult(fixVehicle);
//取维修数据长度
var fixlength=fixVehicledata.length;
var fixdata=new Array();
var fixtype=new Array();
var fixcost=new Array();
if(fixVehicledata!=null){
for(var f=0;f<fixVehicledata.length;f++){
fixdata[f]=fixVehicledata[f].maintaineddate;
fixtype[f]=fixVehicledata[f].maintainedtype;
fixcost[f]=fixVehicledata[f].maintainedcost;
}
//填充车辆数据.
tablesObj.Cell(2,1).Range.Text =numberplate;
tablesObj.Cell(2,2).Range.Text =vehicletypeid;
tablesObj.Cell(2,3).Range.Text =displacement;
tablesObj.Cell(2,4).Range.Text =buyprice;
tablesObj.Cell(2,5).Range.Text =buystime;
tablesObj.Cell(3,2).Range.Text =suiche.substring(1,suiche.length-1);
tablesObj.Rows.add();//新增行
//填充使用情况数据
for(var j=0;j<uselength;j++){
tablesObj.Cell(6+j,2).Range.Text =sumyear[j];
tablesObj.Cell(6+j,3).Range.Text =summile[j];
tablesObj.Rows.add();//新增行
}
//tablesObj.Rows.Split(BeforeRow=tablesObj.Cell(tablesObj.rows(uselength+5)));//拆分行
tablesObj.Cell(uselength+5, 3).Split(1,3);
tablesObj.Cell(uselength+6,1).Range.Text ="车辆维护记录";
tablesObj.Cell(uselength+6,2).Range.Text ="序号";
tablesObj.Cell(uselength+6,3).Range.Text ="维修日期";
tablesObj.Cell(uselength+6,4).Range.Text ="维修项目";
tablesObj.Cell(uselength+6,5).Range.Text ="金额";
tablesObj.Rows.add();//新增行
for(var k=0;k<fixlength;k++){
tablesObj.Cell(7+uselength+k,2).Range.Text =k+1;
tablesObj.Cell(7+uselength+k,3).Range.Text =fixdata[k].substring(0,10);
tablesObj.Cell(7+uselength+k,4).Range.Text =fixtype[k];
tablesObj.Cell(7+uselength+k,5).Range.Text =fixcost[k];
if(k!=fixlength-1){
tablesObj.Rows.add();//新增行
}
}
tablesObj.Cell(4,1).Merge(tablesObj.Cell(4+uselength,1));//合并使用情况统计列
tablesObj.Cell(5+uselength,1).Merge(tablesObj.Cell(5+uselength+fixlength,1));//合并车辆维护记录列
//
//
//
//
//
//
// //循环合并行驶公里数据列
// for(var w=0;w<uselength;w++){
// tablesObj.Cell(6+w,3).Merge(tablesObj.Cell(6+w,5));
// }
//
// //合并车辆维护记录第一列
// tablesObj.Cell(uselength+7,1).Merge(tablesObj.Cell(uselength+fixlength+7,1));
// tablesObj.Cell(fixlength+uselength+1,1).Merge(tablesObj.Cell(fixlength+uselength+1,5));
// tablesObj.rows(fixlength+uselength+1).Borders(2).LineStyle=0;//左边虚线0,实线1
// tablesObj.rows(fixlength+uselength+1).Borders(4).LineStyle=0;//右边虚线0,实线1
//
//var bb=id.length;
////Borders(),1 上 2左 3下 4右
//if(i==bb-1){
//tablesObj.Rows(uselength+7).Delete();
//}
}
}
2>tablesObj.Cell(行,列).Merge(tablesObj.Cell(行,列));//合并某行某列到某行某列。
3>tablesObj.Cell(行,列).Range.Text//给单元格赋值。
4>tablesObj = this.office.obj.ActiveDocument.Tables(1);//得到表格
5> tablesObj.rows(fixlength+uselength+1).Borders(2).LineStyle=0;//左边虚线0,实线1,其中1 上 2左 3下 4右,常用于连续添加WORD表格的情况
6> tablesObj.Rows(行).Delete();//删除行,注意:只有未合并列的情况下才能进行删除。
7> tablesObj.Cell(行, 列) .Font.Name=”宋体” //字体设置,同样还有.Font.Size字体大小等。
8> tablesObj.Cell.ParagraphFormat.Alignment= align;//居中对齐
以下代码实现如图功能:
思路如下:
1、加载模板,模板如图:
2、往第二三行所有需要赋值的单元格赋父页面取到的值。
3、循环新增加行填充后台取到的使用情况数据。
4、拆分单元格,3列拆成5列。
5、循环新增加行,并循环填充后台取到的数据。
6、如果行数为添加值长度-1则不再增加行(如果不做这个,最后会多一行)
7、合并列。
关键方法代码(貌似不准加):
this.fillData = function() {
//下面的值是从父页面拿到的。
var datas = this.getPageData().data;
var numberplate = datas.numberplate;//车辆号码
var vehicletypeid =datas.vehicletypeid;//车辆型号
var displacement=datas.displacement;//排气量
var buyprice=datas.buyprice;//价格
var buystime=datas.buystime.substring(0,10);//购买时间
var suiche=datas.suiche;//随车配置
var id=datas.ids;//车辆ID
var sumyear=new Array();
var summile=new Array();
var tablesObj = this.office.obj.ActiveDocument.Tables(1);//得到表格
debugger;
//以下取使用情况数据,从后台拿的Result数据
var useyear=this.request('LBIPVehicleyear',{id:id}) ;
if(useyear==null){
alert("没有使用数据!");
return;
}
var useyeardata=LEAP.convertResult(useyear);
if(useyeardata!=null){
for(var i=0;i<useyeardata.length;i++){
sumyear[i]=useyeardata[i].sumyear;
summile[i]=useyeardata[i].summile;
}
}
var uselength=useyeardata.length;
//以下取维修数据,从后台拿的Result数据
var fixVehicle=this.request('getfixVehicle',{id:id})
if(fixVehicle==null){
alert("没有维修数据!");
return;
}
var fixVehicledata=LEAP.convertResult(fixVehicle);
//取维修数据长度
var fixlength=fixVehicledata.length;
var fixdata=new Array();
var fixtype=new Array();
var fixcost=new Array();
if(fixVehicledata!=null){
for(var f=0;f<fixVehicledata.length;f++){
fixdata[f]=fixVehicledata[f].maintaineddate;
fixtype[f]=fixVehicledata[f].maintainedtype;
fixcost[f]=fixVehicledata[f].maintainedcost;
}
//填充车辆数据.
tablesObj.Cell(2,1).Range.Text =numberplate;
tablesObj.Cell(2,2).Range.Text =vehicletypeid;
tablesObj.Cell(2,3).Range.Text =displacement;
tablesObj.Cell(2,4).Range.Text =buyprice;
tablesObj.Cell(2,5).Range.Text =buystime;
tablesObj.Cell(3,2).Range.Text =suiche.substring(1,suiche.length-1);
tablesObj.Rows.add();//新增行
//填充使用情况数据
for(var j=0;j<uselength;j++){
tablesObj.Cell(6+j,2).Range.Text =sumyear[j];
tablesObj.Cell(6+j,3).Range.Text =summile[j];
tablesObj.Rows.add();//新增行
}
//tablesObj.Rows.Split(BeforeRow=tablesObj.Cell(tablesObj.rows(uselength+5)));//拆分行
tablesObj.Cell(uselength+5, 3).Split(1,3);
tablesObj.Cell(uselength+6,1).Range.Text ="车辆维护记录";
tablesObj.Cell(uselength+6,2).Range.Text ="序号";
tablesObj.Cell(uselength+6,3).Range.Text ="维修日期";
tablesObj.Cell(uselength+6,4).Range.Text ="维修项目";
tablesObj.Cell(uselength+6,5).Range.Text ="金额";
tablesObj.Rows.add();//新增行
for(var k=0;k<fixlength;k++){
tablesObj.Cell(7+uselength+k,2).Range.Text =k+1;
tablesObj.Cell(7+uselength+k,3).Range.Text =fixdata[k].substring(0,10);
tablesObj.Cell(7+uselength+k,4).Range.Text =fixtype[k];
tablesObj.Cell(7+uselength+k,5).Range.Text =fixcost[k];
if(k!=fixlength-1){
tablesObj.Rows.add();//新增行
}
}
tablesObj.Cell(4,1).Merge(tablesObj.Cell(4+uselength,1));//合并使用情况统计列
tablesObj.Cell(5+uselength,1).Merge(tablesObj.Cell(5+uselength+fixlength,1));//合并车辆维护记录列
//
//
//
//
//
//
// //循环合并行驶公里数据列
// for(var w=0;w<uselength;w++){
// tablesObj.Cell(6+w,3).Merge(tablesObj.Cell(6+w,5));
// }
//
// //合并车辆维护记录第一列
// tablesObj.Cell(uselength+7,1).Merge(tablesObj.Cell(uselength+fixlength+7,1));
// tablesObj.Cell(fixlength+uselength+1,1).Merge(tablesObj.Cell(fixlength+uselength+1,5));
// tablesObj.rows(fixlength+uselength+1).Borders(2).LineStyle=0;//左边虚线0,实线1
// tablesObj.rows(fixlength+uselength+1).Borders(4).LineStyle=0;//右边虚线0,实线1
//
//var bb=id.length;
////Borders(),1 上 2左 3下 4右
//if(i==bb-1){
//tablesObj.Rows(uselength+7).Delete();
//}
}
}
发表评论
-
在模态窗口中提交后,如何关闭窗口再刷新父页面
2011-12-14 14:11 19401.dialogArguments.location.assi ... -
js操作word套红
2011-11-01 16:28 6251//(标准版) //隐藏或显示修订痕迹 function j ... -
js触发onclick事件
2011-04-21 11:24 2025if(document.all){ document. ... -
javascript中showModalDialog和showModelessDialog区别
2011-03-03 13:19 1045javascript中showModalDialog和 ... -
js提交表单
2010-12-19 16:18 37461.document.forms.from.submit(); ... -
JS刷新父窗口的几种方式
2010-12-10 10:02 1065浮层内嵌iframe及frame集合窗口,刷新父页面的多种方法 ... -
HTML DOM的nodeType值
2010-12-04 18:37 1305将HTML DOM中几个容易常用的属性做下记录: nodeN ... -
JavaScript的Table表格对象
2010-12-04 14:16 1008Table表格对象 Table对象: ... -
js如何获取上传图片的大小
2010-11-29 16:41 2630<%@ page language="java ... -
JavaScript 修改注册表来改变“工具--Internet选项”(转载)
2010-11-29 10:22 2232注册表有关安全设置项的说明: 注册表路径: HKEY_CURR ... -
利用javascript判断浏览器是否已经安装ActiveX控件和是否禁止运行ActiveX控件
2010-11-28 09:56 1824从微软给IE打上SP2以后 ... -
js动态时间代码
2010-11-04 16:12 1337<SCRIPT language=JavaScript& ... -
刷新父页面,javacript
2010-11-02 21:48 1019用iframe、弹出子页面刷新父页面iframe Js代码 ... -
常用限制input的方法
2010-10-17 16:47 904常用限制input的方法 1.取消按钮按下时的虚线框,在inp ... -
Js设置文本框中焦点位置在最后
2010-09-18 12:06 3723在一般的程序中.程序员做输入框内容正确性检测时一般喜欢通过判断 ... -
事件属性
2010-09-09 16:14 899窗口事件 (Window Events) 仅在 body 和 ... -
alt属性和title属性
2010-09-08 09:04 912alt属性和title属性 当浏 ... -
window.open()用法详解
2010-09-05 22:48 1228window.open()的所有参数列表 前言:经常上网 ... -
js转码函数
2010-09-04 22:26 4750escape()编码,不能编码URI unescape()解 ... -
在ModalDialog中操作父窗口对象(转帖)
2010-09-03 10:39 14991、不能使用window.parent Window.par ...
相关推荐
在JavaScript编程中,掌握一些常用的小技巧可以极大地提高开发效率和代码质量。以下是一些从网络上整合的实用技巧,特别适合初学者学习。 1. 事件源对象:`event.srcElement` 可以获取触发事件的元素,而 `event....
下面是JavaScript中的一些常用代码,涵盖了事件处理、DOM操作、字符串处理、CSS样式设置、表单操作等方面。 事件处理 * 获取事件源对象的TagName:`event.srcElement.tagName` * 获取事件源对象的类型:`event....
### JavaScript函数大全Word版知识点详解 #### 一、概述 《JavaScript函数大全Word版》是一份详尽的JavaScript基础知识及函数应用指南。该文档通过列举常见的JavaScript语法特性、内置对象和函数,帮助开发者快速...
在本文中,我们将探讨如何使用JavaScript来操作Microsoft的办公软件,如Word和Excel。 1. JavaScript操作Word 在Web应用中,JavaScript可以通过ActiveX对象与Windows操作系统中的应用程序进行交互,如Microsoft ...
### JavaScript文档操作知识点详解 #### 一、Document对象概述 **Document对象**是浏览器对象模型(BOM)中的核心组成部分之一,它表示加载在浏览器窗口中的HTML文档。通过Document对象,开发者能够实现对网页内容的...
### 常用JS大全:Web开发中的关键知识点解析 ...以上内容总结了Web开发中常用的JavaScript知识点,涉及事件处理、DOM操作、样式控制、表单管理等多个方面,对于前端开发者来说是不可或缺的技能集合。
### JavaScript常用代码总结 在日常开发中,JavaScript作为...以上内容覆盖了JavaScript中常用的代码片段,包括DOM操作、函数参数处理、数据类型判断等多方面的知识点,希望能帮助开发者更好地理解和应用JavaScript。
以下是一些JavaScript中最常用的技术和技巧: 1. **事件源对象**:在JavaScript事件处理中,`event.srcElement`是IE浏览器特有的属性,用于获取触发事件的元素。而在其他浏览器中,通常使用`event.target`来达到...
在网页开发中,这样的编辑器通常被称为富文本编辑器(Rich Text Editor),它允许用户在网页上进行文字编辑、格式化、插入图片、链接等操作,与使用Word软件非常相似。下面将详细介绍这种编辑器的实现原理、常用技术...
### JS常用代码大全知识点解析 #### 一、事件与元素操作 **事件源对象:** 在JavaScript中,`event.srcElement`属性返回触发事件的元素。`event.srcElement.tagName`和`event.srcElement.type`分别返回该元素的...
- **第三方库**: 为了处理这三种文件格式,开发者可能引入了专门的库,例如Apache POI用于处理Word和Excel,而PDF可能使用了如PDF.js、PDFBox或MuPDF等库。 - **渲染引擎**: 针对每种格式,需要一个合适的渲染引擎来...
### 常用的一些JavaScript小技巧详解 在前端开发领域,JavaScript是不可或缺的编程语言,其灵活多变的特性使得开发者能够实现丰富的交互效果。本文将深入探讨一系列实用的JavaScript小技巧,帮助开发者提高编码效率...
以下是一些常用的JS代码和概念: 1. **事件处理**: - `event.srcElement.tagName` 和 `event.srcElement.type`:获取触发事件的元素的标签名和类型。 - `event.srcElement.setCapture()` 和 `event.srcElement....
ExtJS 是一个强大的JavaScript应用程序框架,专为构建复杂的、数据驱动的富客户端Web应用而设计。这个"ExtJS教程word版本"提供了全面的学习资源,帮助开发者深入理解和掌握ExtJS的核心概念和技术。 教程共138页,...
### 常用JavaScript知识点解析 #### 一、页面刷新与重定向 **知识点:** 页面刷新或重定向是Web开发中的一个基本功能,通过它可以让用户在一定时间后自动跳转到另一个页面。 **代码示例:** ```html ;URL=...
在Word版书籍中,1-15章涵盖了jQuery的基础到进阶知识,包括: 1. **jQuery简介**:介绍jQuery的核心概念和其对JavaScript的改进,以及如何在项目中引入jQuery库。 2. **选择器**:讲解如何使用CSS选择器、ID选择...
- **时间显示**:获取当前时间并显示在页面上,常用作学习日期对象和DOM操作的示例。 #### 六、事件处理 - **常见事件**: - `onLoad`:页面加载完成时触发。 - `onUnload`:页面卸载前触发。 - `onMouseOver`...
以上只是ASP.NET常用函数表中的一部分,实际的Word文档可能会包含更多细节和示例。学习并熟练掌握这些函数,对于提升ASP.NET开发技能,创建功能丰富的Web应用至关重要。同时,了解如何利用好这些工具,可以极大地...
JavaScript是Web开发中不可或缺的一部分,尤其对于程序员来说,掌握一些常用的代码小技巧能极大地提高工作效率。以下是一些关键知识点的详细说明: 1. **事件源对象**:`event.srcElement` 是JavaScript中获取事件...