时间:2010-07-26 08:20:17

标签: javascript excel gwt extjs

4 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

答案 2 :(得分:1)

这是一个带有服务器端调用的解决方案,但没有服务器端代码写入。

http://code.google.com/p/gwt-table-to-excel/

答案 3 :(得分:0)

下面的课程没有服务器端。

public class TableToExcel {
    public static final <T> void save(final CellTable<T> table, String filename) {
        final AnchorElement a = Document.get().createAnchorElement();
        a.setHref("data:application/vnd.ms-excel;base64," + base64(table.getElement().getString()));
        a.setPropertyString("download", (filename.endsWith(".xls") || filename.endsWith(".xlsx")) ? filename : filename + ".xls");

        Document.get().getBody().appendChild(a);
        Scheduler.get().scheduleEntry(new ScheduledCommand() {
            @Override
            public void execute() {
                click(a);
                a.removeFromParent();
            }
        });
    }

    private static native void click(Element elem) /*-{
        elem.click();
    }-*/;

    public static native String base64(String data) /*-{
        return btoa(data);
    }-*/;
}