Flex导出html
发布时间:2020-12-15 04:37:48 所属栏目:百科 来源:网络整理
导读:import flash.errors.*; import flash.events.*; import flash.external.*; import flash.net.URLRequest; import flash.net.URLVariables; /** * 作者:IT小金 * 时间:2011-09-07 * 功能:FLex DataGird生成HTML 导出Excel */ /*将DataGird导出成HTML格式*/
import
flash.errors.*;
import
flash.events.*;
import
flash.external.*;
import
flash.net.URLRequest;
import
flash.net.URLVariables;
/**
* 作者:IT小金
* 时间:2011-09-07
* 功能:FLex DataGird生成HTML 导出Excel
*/
/*将DataGird导出成HTML格式*/
private
function
convertDGToHTMLTable(dg:DataGrid):
String
{
???
//设置默认参数
???
var
font:
String
= dg.getStyle(
'fontFamily'
);
???
var
size:
String
= dg.getStyle(
'fontSize'
);
???
var
str:
String
=
''
;
???
var
colors:
String
=
''
;
???
var
style:
String
=
'style="font-family:'
+font+
';font-size:'
+size+
'pt;"'
;???????????????
???
var
hcolor:
Array
;
???
???
//设置标题行颜色
???
if
(dg.getStyle(
"headerColor"
) !=
undefined
) {
???????
hcolor = [dg.getStyle(
"headerColor"
)];
???
}
else
{
???????
hcolor = dg.getStyle(
"headerColors"
);
???
}??????????????
???
???
//根据datagrid设置基础结构
???
str+=
'<table width="'
+dg.width+
'" border="1"><thead><tr width="'
+dg.width+
'" style="background-color:#'
+
Number
((hcolor[
0
])).toString(
16
)+
'">'
;
???
???
//设置列头?????????
???
for
(
var
i:
int
=
0
;i<dg.columns.length;i++) {
???????
colors = dg.getStyle(
"themeColor"
);
???????????
???????
if
(dg.columns[i].headerText !=
undefined
) {
???????????
str+=
"<th "
+style+
">"
+dg.columns[i].headerText+
"</th>"
;
???????
}
else
{
???????????
str+=
"<th "
+style+
">"
+dg.columns[i].dataField+
"</th>"
;
???????
}
???
}
???
str +=
"</tr></thead><tbody>"
;
???
colors = dg.getStyle(
"alternatingRowColors"
);
???
???
//设置单元格数据,数据遍历DataGird
???
for
(
var
j:
int
=
0
;j<dg.dataProvider.length;j++) {????????????????
???????
str+=
"<tr width=""
+Math.ceil(dg.width)+
"">"
;
???????????
???????
for
(
var
k:
int
=
0
; k < dg.columns.length; k++) {
???????????
???????????
if
(dg.dataProvider.getItemAt(j) !=
undefined
&& dg.dataProvider.getItemAt(j) !=
null
) {
???????????????
if
(dg.columns[k].labelFunction !=
undefined
) {
???????????????????
str +=
"<td width=""
+Math.ceil(dg.columns[k].width)+
"" "
+style+
">"
+dg.columns[k].labelFunction(dg.dataProvider.getItemAt(j),dg.columns[k].dataField)+
"</td>"
;
???????????????????
???????????????
}
else
{
???????????????????
str +=
"<td width=""
+Math.ceil(dg.columns[k].width)+
"" "
+style+
">"
+dg.dataProvider.getItemAt(j)[dg.columns[k].dataField]+
"</td>"
;
???????????????
}
???????????
}
???????
}
???????
str +=
"</tr>"
;
???
}
???
str+=
"</tbody></table>"
;
???
return
str;
}
/*接Asp。net中 ashx一般处理程序,输出html成Excel文件
*/
private
function
loadDGInExcel(dg:DataGrid,url:
String
):
void
{
???
var
var
iables:URLVariables =
new
URLVariables();
???
var
iables.htmltable = convertDGToHTMLTable(dg);
???
???
var
u:URLRequest =
new
URLRequest(url);
???
u.data =
var
iables;
???
u.method = URLRequestMethod.POST;
???
navigateToURL(u,
"_self"
);
}???
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |