使用PDF预览选择项目

时间:2012-08-27 11:31:51

标签: sharepoint pdf drop-down-menu sharepoint-2010

我需要使用列表框(DropDown)创建一个包含中所有文件的页面,然后创建 PDF预览

我使用 HTML表单Web部件创建了一个页面。预览可以这样制作:

<embed height="800" width="1200" src="..." type="application/pdf">

如何在库中提供包含所有项目的列表框,并将来源更改为所选项目?

1 个答案:

答案 0 :(得分:0)

好的,我明白了。

我使用 HTML表单Web部件创建了一个新页面,并使用Javascript获取此内容:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript">
var siteUrl = '/XX';
var listName = 'YY';
var listItems;
function retrieveAllListProperties() {
    var clientContext = new SP.ClientContext(siteUrl);
    var oList = clientContext.get_web().get_lists().getByTitle(listName);

    var query = new SP.CamlQuery();
    query.set_viewXml("<View Scope='RecursiveAll'><Query><OrderBy><FieldRef Name='FileLeafRef' Ascending='True' /></OrderBy></Query></View>");
    listItems = oList.getItems(query);
    clientContext.load(listItems);
    clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
}

function onQuerySucceeded() {
    var listEnumerator = listItems.getEnumerator();
    $('#select').find('option').remove().end().append('<option value="">Please select</option>');
    while (listEnumerator.moveNext()) {
        var listItem = listEnumerator.get_current();
        $('#select').append('<option value="http://host' + listItem.get_item('FileRef') + '">' + listItem.get_item('FileLeafRef') + '</option>');
    }
}

function onQueryFailed(sender, args) {
    alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}

$(this).ready(function() {
    ExecuteOrDelayUntilScriptLoaded(retrieveAllListProperties, "sp.js");

    $('#etiketten').change(function() {
        $('#pdf').remove();
        if($('#select').val() != '') {
            $('#container').append('<embed name="pdf" id="pdf" height="768" width="1024" src="' + $('#select').val() + '" type="application/pdf">');
        }
    });
});
</script>

<div id="container" name="container">
<select name="select" id="select">
<option value="">Please select</option>
</select>
<br/>
</div>