关于contentquery webpart的pdf文件如何在OOS上打开,并且所有文件在浏览器新起的页面打开?
- function SetHref(pdf) {
- var c = pdf.href;
- var d = "http://eds.jd.com";
- var f = "";
- var g = "";
- if (c.indexOf('sites') > -1) {
- var e = c.split('/');
- var i;
- for (i = 0; i < e.length; i++) {
- if (e[i] == "sites") {
- break;
- }
- }
- d += "/sites/" + e[i + 1];
- var InfoUri = d + "/_api/site/rootWeb/webinfos";
- $.ajax({
- url: InfoUri,
- method: "GET",
- headers: { "accept": "application/JSON;odata=verbose" },
- success: function (data) {
- var h = data.d.results;
- var num = 0;
- for (num = 0; num < h.length; num++) {
- var url = data.d.results[num].ServerRelativeUrl.split('/');
- if (url[url.length - 1] == decodeURI(e[i + 2])) {
- break;
- }
- }
- if (num == h.length) {
- f = e[i + 2];
- for (var j = i + 3; j < e.length - 1; j++) {
- f += "/" + e[j];
- }
- g = e[e.length - 1];
- }
- else {
- d += "/" + e[i + 2];
- f = e[i + 3];
- for (var j = i + 4; j < e.length - 1; j++) {
- f += "/" + e[j];
- }
- g = e[e.length - 1];
- }
- Gethref(d, f, g, pdf);
- },
- error: function (data) {
- var d = data;
- },
- failed: function (data) {
- var d = data;
- },
- async: true
- });
- }
- else {
- var e = c.split('/');
- f = e[3];
- for (var j = 4; j < e.length - 1; j++) {
- f += "/" + e[j];
- }
- g = e[e.length - 1];
- Gethref(d, f, g, pdf);
- }
- }
- function Gethref(d, f, g, pdf) {
- var fileInfoUri = d + "/_api/web/GetFolderByServerRelativeUrl('" + f + "')/Files";
- $.ajax({
- url: fileInfoUri,
- method: "GET",
- headers: { "accept": "application/JSON;odata=verbose" },
- success: function (data) {
- var h = data.d.results;
- for (var i = 0; i < h.length; i++) {
- if (data.d.results[i].Name == decodeURI(g)) {
- pdf.href = d + "/_layouts/15/WopiFrame.aspx?sourcedoc={" + data.d.results[i].UniqueId + "}";
- pdf.target = "_blank";
- pdf.onclick = null;
- }
- }
- },
- error: function (data) {
- var d = data;
- },
- failed: function (data) {
- var d = data;
- },
- async: true
- });
- }
关于contentquery webpart的pdf文件如何在OOS上打开,并且所有文件在浏览器新起的页面打开?的更多相关文章
- js上传文件带参数,并且,返回给前台文件路径,解析上传的xml文件,存储到数据库中
ajaxfileupload.js jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId ...
- 如何在Github上删除项目及某个文件
在Github上删除项目 在GitHub仓库中找到已经建立好的某个仓库,本篇文章以我的myBookCodes仓库为例,在建立的myBookCodes仓库中首先找到settings选项,如图所示: 将页 ...
- 如何在Linux上恢复误删除的文件或目录
Linux不像windows有那么显眼的回收站,不是简单的还原就可以了.linux删除文件还原可以分为两种情况,一种是删除以后在进程存在删除信息,一种是删除以后进程都找不到,只有借助于工具还原,这里分 ...
- 求大师点化,寻求大文件(最大20G左右)上传方案
之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...
- eclipse SVN 上传.so库文件
eclipse SVN提交代码的时候,是自动忽略.so库文件的.用下面所说的操作后,.so库文件右下角的图标会变成一个蓝色的+号的图标,这样就可以提交.so文件了 选择要上传的.so文件,右键 ——& ...
- #iPhone6与iPhone6Plus适配#如何在Xcode 6中创建 PCH 文件
本文永久链接http://www.cnblogs.com/ChenYilong/p/4008086.html 新建文件 ⌘+N选择 iOS/Mac -> Other -> PCH Fi ...
- 如何在Sublime text中运行PHP文件
如何在Sublime text中运行PHP文件 2014-06-14 17:17 3709人阅读 评论(1) 收藏 举报 phpSublime Text 一.将PHP安装目录放如环境变量PATH 二. ...
- git中手动删除的文件如何在git中删除
在日常开发中,我们可能或手动删除(delete键删除的)一些文件,然而我们本来应该是用git rm fileName命令删除的,但是现在我们手动删除了,那么要如何在git里面讲那些手动删除的文件删除呢 ...
- 如何在 Linux 上复制文件/文件夹到远程系统?
从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux 管理员的日常任务之一. 我觉得不会有人不同意,因为无论在哪里这都是你的日常操作之一.有很多办法都能处理这个任务,我们试着加以概括 ...
随机推荐
- csharp:FlowLayoutPanel
/// <summary> /// 集合添加的控件 /// 涂聚文20150339 /// </summary> public void AddNewTextBox() { P ...
- [SD2015]序列统计——solution
http://www.lydsy.com/JudgeOnline/problem.php?id=3992 很容易得出DP方程: f[i][c]=f[i-1][a]*f[1][b]① 其中a*b%M=c ...
- App更新之dialog数字进度条
App更新之dialog数字进度条 前言:现在一般的Android软件都是需要不断更新的,当你打开某个app的时候,如果有新的版本,它会提示你有新版本需要更新.当有更新时,会弹出一个提示框,点击下载, ...
- Qt消息机制和事件、事件过滤
一,事件 事件(event)是由系统或者 Qt 本身在不同的时刻发出的.当用户按下鼠标.敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件.一些事件在对用户操作做出响应时发出,如键盘事件等 ...
- PRML读书笔记——线性回归模型(上)
本章开始学习第一个有监督学习模型--线性回归模型."线性"在这里的含义仅限定了模型必须是参数的线性函数.而正如我们接下来要看到的,线性回归模型可以是输入变量\(x\)的非线性函数. ...
- 微信小程序 - 弹出键盘遮挡住输入框
在开发微信小程序的时候遇到,输入用户名或者手机号以及地址,手机键盘调起来,会把输入框遮挡. 如图: 以上两张图是自己工作中遇到的,此处不要着急,一个属性帮你搞定. cursor-spacing:指定光 ...
- JDK1.9怎么配置环境变量
- Linux kill/pkill/killall命令详解
kill kill(terminate a process)命令用来终止指定的进程, 对于一个后台进程就须用kill命令来终止,我们就需要先使用ps/pidof/pstree/top等工具获取进程PI ...
- C# 多维数组 交错数组的区别,即 [ , ] 与 [ ][ ]的区别
多维数组的声明 在声明时,必须指定数组的长度,格式为 type [lenght ,lenght ,lengh, ... ] int [,] test1 = new int [3,3]; 或声明时即赋值 ...
- spark中利用Sql2o连接数据的例子BlogService
最近在看学习Spark Framework. 这是一个web框架,宗旨正如其官网LInk所示:Spark - A micro framework for creating web applicatio ...