2010-10-05 67 views
0

我正在构建一个公告板网站(2010年),我确信这一定很简单,但似乎并非如此。无论如何,在我的默认页面,我有一个查询webpart显示最新的项目,我需要的只是一个按钮,在页面顶部的“添加新项目”,这将显示弹出窗口,并允许用户完成表单就像它的工作显示列表项目的形式。SharePoint在主页上添加新项目按钮

我看过AllItems.aspx,但甚至不能看到“添加新项目”按钮来复制!

任何想法?

感谢

回答

1

是多么复杂的查询?如果查询仅从一个列表中提取,则可以将过滤器放入列表中的一个视图中,并将查询Web部件替换为列表视图Web部件(在浏览器中,选择以您的列表命名的Web部件)。在列表视图Web部件属性中,切换到新视图。默认情况下,列表视图Web部件包含添加新项目链接。

现在,这是一个链接,而不是一个按钮。它位于web部件的页脚,而不是顶部。如果您确实需要页面顶部的按钮,则可以添加内容编辑器Web部件并为您自己的按钮插入HTML。您应该可以重复使用AllItems.aspx中的添加新项目URL。网址应该如下所示:http://mysite/_layouts/listform.aspx?PageType=8&ListId= {21AA3D96-75EE-45CC-A153-D0FA7856DE67} & RootFolder =

+0

使用页面底部的链接url不起作用,所以最后我不得不在页面的顶部添加一个填充表单webpart与一些jquery隐藏显示。 – ifunky 2010-10-11 15:06:42

+0

这是正确的。链接只是一个例子,因此“应该看起来像这样。”它没有指向一个真实的网站,并且不起作用。它的目的是说明添加新项目URL的模式,以便您知道您拥有正确的模式。 – 2010-10-11 20:48:53

2

这实际上很简单。你需要知道你的NewForm.aspx页面的地址。要使它看起来像一个对话框,您想要将IsDlg=1添加到查询字符串中。 SharePoint有一个内置的JavaScript,可以为你做这一切。以下是我创建的用于打开新的帮助台票据的按钮示例。

//Handle the DialogCallback callback 
function DialogCallback(dialogResult, returnValue){} 

//Open the Dialog 
function OpenNewDialog(){ 
    var options = { 
    url:"/depts/is/helpdesk/Lists/Service%20Requests/NewForm.aspx?IsDlg=1", 
    width: 700, 
    height: 700, 
    dialogReturnValueCallback: DialogCallback 
    }; 
    SP.UI.ModalDialog.showModalDialog(options); 
} 

您也可以忽略宽度和高度选项,并且对话窗口会自行调整大小。对于HTML

<div style="text-align: center"> 
    <a href="javascript:OpenNewServiceRequest()">Open a new Service Request</a> 
</div> 
相关问题