是否可以使用jquery代码将文档上载到SharePoint文档库?
在客户端是否有与asp:fileupload等效的控件来选择文件?
这是目标:
1)解决方案应该是我粘贴的代码块;而不是webpart或编译的解决方案或应用程序
2)我不想使用出现在设置元数据的本机SharePoint文件上传或编辑表单页面。
创建一个新的SharePoint aspx页面:
这些链接让我相信它可能是:
http://msdn.microsoft.com/en-us/library/ms454491(v=office.14).aspx
http://blog.yahoo.com/lamung/articles/91696
Upload a file to SharePoint through the built-in web services
我会支付一个有效的解决方案。理想情况下只使用Web服务的客户端代码。
答案 0 :(得分:2)
以下代码将pdf上传到文档库。这可能对你有所帮助
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script><script src="/Style%20Library/jquery.SPServices-0.6.2.min.js" type="application/javascript"></script><script src="/Style%20Library/jquery-1.6.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
function uploadFile() {
var filePath = "c:\\test.pdf";
var url= "http://Site/Shared Documents/test.pdf";
var soapEnv =
"<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'> \
<soap:Body>\
<CopyIntoItems xmlns='http://schemas.microsoft.com/sharepoint/soap/'>\
<SourceUrl>" + filePath + "</SourceUrl>\
<DestinationUrls>\
<string> "+ url + "</string>\
</DestinationUrls>\
<Fields>\
<FieldInformation Type='Text' DisplayName='Title' InternalName='Title' Value='Test' />\
</Fields>\
<Stream>base64Binary</Stream>\
</CopyIntoItems>\
</soap:Body>\
</soap:Envelope>";
$.ajax({
url: "http://site/_vti_bin/copy.asmx",
beforeSend: function (xhr) { xhr.setRequestHeader("SOAPAction", "http://schemas.microsoft.com/sharepoint/soap/CopyIntoItems"); },
type: "POST",
dataType: "xml",
data: soapEnv,
complete: processResult,
contentType: "text/xml; charset=\"utf-8\""
});
alert(soapEnv);
}
function processResult(xData, status) {
alert("Uploaded SuccessFully");
}
</script>
<input name="Upload" onclick="uploadFile()" type="button"/>
答案 1 :(得分:1)
你可以用我的两个项目来做到这一点:
createFile()
:将阅读内容上传到Sharepoint 我将它用于我的一个Sharepoint站点(intranet),它适用于所有浏览器。