EasyUI Datagrid 를 Excel 로 내 보 내기 (frozenColumns 열 포함 하지 않 음)
1 var tableString = '<table border="1" bordercolor="#D7D7D7">';
2 var columns = printDatagrid.datagrid("options").columns; // columns
3 var nameList = new Array();// columns
4 // title
5 if (typeof columns != 'undefined' && columns != '') {
6 $(columns).each(function (index) {
7 tableString += '<tr>';
8 for (var i = 0; i < columns[index].length; ++i) {
9 if (!columns[index][i].hidden) {
10 tableString += '<th';
11 if (typeof columns[index][i].field != 'undefined' && columns[index][i].field != '') {
12 nameList.push(columns[index][i]);
13 }
14 tableString += '>' + columns[index][i].title + '</th>';
15 }
16 }
17 tableString += '</tr>';
18 });
19 }
20
21 :printDatagrid dg JQ
2. dg 본문 내용 읽 기;
/
2 var rows = printDatagrid.datagrid("getRows"); //
3 for (var i = 0; i < rows.length; ++i) {
4 tableString += '<tr>';
5 for (var j = 0; j < nameList.length; ++j) {
6 tableString += '<td';
7 tableString += '>';
8 if (typeof (rows[i][nameList[j].field]) == "undefined") {
9 tableString += " "
10 } else {
11 tableString += rows[i][nameList[j].field];
12 }
13 tableString += '</td>';
14 }
15 tableString += '</tr>';
16 }
17 tableString += '</table>'
3. ajax 의 반환 형식 에 스 트림 형식 이 없 기 때문에 form 폼 을 제출 하 는 형식 으로 배경 에 데 이 터 를 전송 합 니 다. 그 중에서 매개 변 수 는 encodeURI () 로 디 코딩 해 야 합 니 다. 그렇지 않 으 면 html 라벨 은 배경 으로 전송 되 지 않 습 니 다.
1 var options = $("#dg").datagrid('getPager').pagination('options');
2 var f = $('<form action="../handler/dgtoexcel.ashx" method="post" id="fm1"></form>');
3 var i = $('<input type="hidden" id="contexts" name="contexts" />'); //
4 var pn = $('<input type="hidden" id="txtname" name="txtname" />'); //
5 i.val(encodeURI(tableid));
6 i.appendTo(f);
7 pn.val(encodeURI(options.pageNumber));
8 pn.appendTo(f);
9 f.appendTo(document.body).submit();
백 스테이지 가 간단 하 니 여 기 는 쓰 지 않 겠 습 니 다.request 에서 가 져 온 인 자 는 인자 UrlEncode 를 디 코딩 한 다음 에 파일 스 트림 파일 이름 확장 자 를 출력 해 야 합 니 다. .xls
PS: 보충
우 리 는 엑셀 을 내 보 낼 때 긴 숫자 가 과학 계수 법 으로 바 뀌 는 상황 을 만 날 수 있다!
sb.Append("<style>td{mso-number-format:\"\\@\";}</style>");
table 탭 에 위 스타일 몇 개 만 추가 하면 됩 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.