我想做一个网页,实现在我做的网页时可以编辑excel文件,怎么做到?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我想做一个网页,实现在我做的网页时可以编辑excel文件,怎么做到?相关的知识,希望对你有一定的参考价值。

最快的方法就是使用在线Excel插件开发,在浏览器中嵌入这些功能。市面上比较好用的在线Excel插件,有SpreadJS 纯前端表格控件、WebOffice控件等

参考技术A

ExcelOnline是office提供的一个应用,根本无法部署在个人网站上,如果想部署在个人网站上你应该去找在线的Excel控件去嵌入网页中作为网页中的一部分功能,推荐一下SpreadJS,超链接点开就是一个可以在线编辑Excel的网页。

参考技术B 微软已经推出了Excel Online
https://office.live.com/start/Excel.aspx?WT.mc_id=O16_BingHP追问

我想做的是网页是在自己单位的内部网上使用,或者在我们单位的ftp上使用

追答

将xls文件设置为共享即可,个人搭建网页excel不现实

参考技术C 微软已经推出了Excel Online

如何在cfscript内部输出到网页?

对于较长的帖子感到抱歉,我正在尝试具体。我对冷融合和lucee有点新意,所以请原谅我,如果我错过了一些基本的东西。我只是想做一个快速的POC,但是无法让它运转起来。 我想做的是打一个页面,写一个网页,睡一会儿。一种心跳。我无法实现的是写入网页...直到所有睡眠都发生并且页面cfm文件完成处理。在过去的几天里,我看了很多,并尝试了很多项目,但无济于事。 从我的index.cfm lucee页面,我有一个链接来启动一个新选项卡并调用我的cfm文件。 <a href="./pinger2.cfm" target="_blank"><img class="ploverride" src="/assets/img/Ping.png" alt="Ping Test" width="125" height="75"> 没问题,新标签打开,pinger2.cfm开始处理。我希望的是几乎立即打印到页面的表格,然后进行第一次调出,将结果打印到页面,睡眠,进行下一次调出,打印到页面......但是没有workey。有人有线索吗? pinger2.cfm文件中的代码是:

<cfscript>
    public struct function pinger( required string url, required string verb, required numeric timeout, struct body )
    {
        var result = {
            success = false,
            errorMessage = ""
        };
        var httpService = new http();
        httpService.setMethod( arguments.verb );
        httpService.setUrl( arguments.url );
        httpService.setTimeout( arguments.timeout );
        if( arguments.verb == "post" || arguments.verb == "put" )
        {
            httpService.addParam(type="body", value=SerializeJSON(arguments.body));
        }
        try {
            callStart = getTickCount();
            var resultObject = httpService.send().getPrefix();
            callEnd = getTickCount();
            callLength = (callEnd-callStart)/1000;
            if( isDefined("resultObject.status_code") && resultObject.status_code == 200 )
            {
                result.success = true;
                logMessage = "Pinger took " & toString( callLength ) & " seconds.";
                outLine = "<tr><td>" & resultObject.charset &  "</td><td>" & resultObject.http_version  & "</td><td>" & resultObject.mimetype  & "</td><td>" & resultObject.status_code  & "</td><td>" & resultObject.status_text  & "</td><td>" & resultObject.statuscode  & "</td><td>" & logMessage & "</td></tr>";
                writeOutput( outLine );
                getPageContext().getOut().flush();
                return result;
            }
            else
            {
                throw("Status Code returned " & resultObject.status_code);
            }
        }
        catch(Any e) {
            // something went wrong with the request
            writeDump( e ); 
            abort;
        }
    }
    outLine = "<table><tr><th>charset</th>  <th>http_version</th>     <th>mimetype</th>      <th>status_code</th>      <th>status_text</th>      <th>statuscode</th>      <th>time</th> </tr>";
    writeOutput( outLine );
    getPageContext().getOut().flush();
    intCounter = 0;
    while(intCounter LT 2) 
    {
        theResponse = pinger(
            url = "https://www.google.com",
            verb = "GET",
            timeout = 5
        );
        intCounter = intCounter + 1;
        getPageContext().getOut().flush();
        sleep(2000);
    }
outLine = "</table>";
writeOutput( outLine );
</cfscript>

注意:我确信那里还有其他“不太好”的做法,但我只是想快速而又脏。 我认为getPageContext().getOut().flush();会做的伎俩,但没有bueno。 编辑:如果重要,我使用CF版本10,0,0,0和Lucee版本4.5.2.018。

答案

我做类似的事情手工生成ETag(使用Lucee 4.5)。我坚持一个简单的

GetPageContext().getOut().getString()

在Application.cfc中的onRequestEnd函数中。这会返回一个HTML字符串,就像它发送到浏览器一样。

您可以将其存储在适当的范围(APPLICATION,SESSION等)中,以后使用它,或者您需要的任何内容。显然,所有处理都需要完成,但不应该要求任何刷新。事实上,潮红可能会也可能不会改变其行为。

以上是关于我想做一个网页,实现在我做的网页时可以编辑excel文件,怎么做到?的主要内容,如果未能解决你的问题,请参考以下文章

我做的网页为啥上面是问号?

js+html实现简易网页计算器

如何实现在网页中在线编辑EXCEL表格,然后保存到服务器中

如何在cfscript内部输出到网页?

在 javascript 中附加到网页

保护我们的网页 C#