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上打开,并且所有文件在浏览器新起的页面打开?的更多相关文章

  1. js上传文件带参数,并且,返回给前台文件路径,解析上传的xml文件,存储到数据库中

    ajaxfileupload.js jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId ...

  2. 如何在Github上删除项目及某个文件

    在Github上删除项目 在GitHub仓库中找到已经建立好的某个仓库,本篇文章以我的myBookCodes仓库为例,在建立的myBookCodes仓库中首先找到settings选项,如图所示: 将页 ...

  3. 如何在Linux上恢复误删除的文件或目录

    Linux不像windows有那么显眼的回收站,不是简单的还原就可以了.linux删除文件还原可以分为两种情况,一种是删除以后在进程存在删除信息,一种是删除以后进程都找不到,只有借助于工具还原,这里分 ...

  4. 求大师点化,寻求大文件(最大20G左右)上传方案

    之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需 ...

  5. eclipse SVN 上传.so库文件

    eclipse SVN提交代码的时候,是自动忽略.so库文件的.用下面所说的操作后,.so库文件右下角的图标会变成一个蓝色的+号的图标,这样就可以提交.so文件了 选择要上传的.so文件,右键 ——& ...

  6. #iPhone6与iPhone6Plus适配#如何在Xcode 6中创建 PCH 文件

    本文永久链接http://www.cnblogs.com/ChenYilong/p/4008086.html   新建文件 ⌘+N选择 iOS/Mac -> Other -> PCH Fi ...

  7. 如何在Sublime text中运行PHP文件

    如何在Sublime text中运行PHP文件 2014-06-14 17:17 3709人阅读 评论(1) 收藏 举报 phpSublime Text 一.将PHP安装目录放如环境变量PATH 二. ...

  8. git中手动删除的文件如何在git中删除

    在日常开发中,我们可能或手动删除(delete键删除的)一些文件,然而我们本来应该是用git rm fileName命令删除的,但是现在我们手动删除了,那么要如何在git里面讲那些手动删除的文件删除呢 ...

  9. 如何在 Linux 上复制文件/文件夹到远程系统?

    从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux 管理员的日常任务之一. 我觉得不会有人不同意,因为无论在哪里这都是你的日常操作之一.有很多办法都能处理这个任务,我们试着加以概括 ...

随机推荐

  1. DOM基础操作(一)

    DOM的基本操作有四种,我们会逐一给大家进行展示 增加操作 1.创建元素节点 createElement 我们可以通过document.createElement(‘div’);这个方法来创建一个元素 ...

  2. 关于StringBuffe()长度和初始化长度的问题归纳

    晚上做一个习题,发现了一个关于StringBuffer()长度的问题 根据理解大致可以归为以下知识. 直接上代码分析吧 public class StringBuffer_length_capacit ...

  3. react 使用 ref 报错 ,[eslint] Using string literals in ref attributes is deprecated. (react/no-string-refs)

    react 项目中给指定元素加事件,使用到 react 的 ref 属性,Eslink 报错 [eslint] Using string literals in ref attributes is d ...

  4. Linux菜鸟简单命令

    想要使用Linux,以下这些命令不可少的哦! 我在工作中经常用到的大多数都是一些文件的查找,和上传下载什么的,没什么技术含量,所以除了自己整理的之外,还有借鉴的别的大神的一些命令,我会在最后标注的\( ...

  5. volley7--NetworkDispatcher从网络中获取数据

    源码: /* * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, V ...

  6. *.vue文件的template标签内使用form标签

    由于form表单有重复提交的问题,所以在vue文件内直接使用form标签时需要注意这个问题,否则会导致页面重复刷新跳转不成功的问题 解决方案: <form @submit.prevent> ...

  7. sqldataAdapter/dataset/datatable的使用

    public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Loa ...

  8. Layui - Xtree 3.0 http://acmeworker.com/BlogContent?type=1038

    2018年1月11日升级 Layui - Xtree 3.0 此版本包含了前两个版本所有的功能,同时修复了一些问题,增加了一些功能,之前的版本可以直接抛弃啦!本次升级改动较多,参数也有所更改,尽量别直 ...

  9. 安装SCOM Reporting Server

    在SQL群集计算机上可以安装SCOM Reporting Server. 1.运行SQL Server安装程序,选择 全新安装SQL Server,不能向已有的群集实例中添加Reporting Ser ...

  10. Linux操作NFS挂载、卸载等操作

    一.NFS服务器的设置 NFS服务器的设定可以通过/etc/exports这个文件进行,设定格式如下 分享目录 主机名或IP(参数1,参数2) /binbin 172.17.1.*(rw,sync,n ...