Excel打开接口
案例尝试前提:
需要载入以下js,css调用user的UI方法,才可以进行使用
<script type="text/javascript" charset="utf-8" src="http://www.1473.cn/uform.js "></script>
<link href="http://www.1473.cn/css/Disk/Disk.css" rel="stylesheet" type="text/css">
<script src="http://disk.1473.cn/js/Disk/Disk.js" type="text/javascript"></script>
代码解释:
/**
* Excel打开
*
* @param {object} 登录用户信息
* @param {object} 文档信息数组
* @return {object} 返回当前窗体
*/
U.MD.O.excel = function (userinfo, fileinfo) {
var _contentel,
_fileid,
_formel,
_child
;
//获取文档的id
if (fileinfo && fileinfo.UserDirectoryID) {
_fileid = fileinfo.UserDirectoryID; //获取文件id
}
if (!_fileid) { //第一次打开的文档的处理
_fileid = Guid.newGuid();
fileinfo = { "UserDirectoryID": _fileid };
}
//得到弹窗
_formel = $("#UD_Excel" + _fileid)[0];
//未打开的创建加载处理
if (!_formel) {
//创建新窗口
_contentel = $("#UD_Excel").clone(true); //克隆word编辑器 包含头部菜单和功能及word编辑区域
_contentel[0].id = ""; //清除id
_child = $(_contentel[0]).Child(); //头部的区域
_formel = new U.UF.UI.form(_child[0], _child[1], { "id": "UD_Excel" + _fileid, "style": { "width": "90%", "height": "90%", "overflow": 'hidden'} }, {}, { "style": { "height": "36px"} }).form; //创建窗体
U.UF.DL.loading(_child[1]); //添加loading处理
U.MD.O.header(userinfo, _child[0], fileinfo); //创建header头部
//添加编辑区域,异步加载iframe并执行回调
U.MD.O.officeLoad(_child[1], "Excel", function (iframe) {
U.UF.DL.uploading(_child[1]); //移除loading处理
iframe.contentWindow.U.MD.O.E.load(fileinfo, userinfo, iframe); //word的处理
}); //创建Office编辑器
}
//如果已经打开过的,直接置顶
else {
U.UF.F.windowTopCenter(_formel);
}
return _formel; // 返回当前窗体
}