我在sharepoint上使用Gridview控件。我将数据绑定到Gridview的列名称。而现在,我想直接点击列名列的行,程序将显示该行的详细弹出窗口。 谢谢!
答案 0 :(得分:0)
我不知道我是否理解你,但您可以尝试打开一个ModalDialog,指向自定义.aspx页面以显示您的信息
http://sqldev-samir.blogspot.de/2012/08/open-modal-dialog-in-serverside-code-in.html
答案 1 :(得分:0)
这是客户端代码,用于打开一个对话框,该对话框将指向包含详细信息的页面(在此示例中为editform.aspx)。此代码还会导致回发,以便使用用户在EditForm.aspx上所做的更改来更新网格。
function CloseCallback(result, target)
{
eval(<%=Page.ClientScript.GetPostBackEventReference(new PostBackOptions(Button1))%>);
}
function OpenDialog(url)
{
var options = {
url: url,
title: '',
allowMaximize: true,
showClose: true,
width: 700,
height: 800,
dialogReturnValueCallback: CloseCallback
};
var dlg = SP.UI.ModalDialog.showModalDialog(options);
}
这是将超链接列添加到网格的服务器端代码(这恰好是RadGrid而不是SPGridView服务器控件)。此列将显示指向上述JavaScript函数的超链接,单击该列时将打开EditForm.aspx以及所选行项中的数据。
GridColumn fldEditLink = new GridHyperLinkColumn() { UniqueName = "Edit", Text = "Edit/View",DataNavigateUrlFields = new string[] { "ID" }, DataNavigateUrlFormatString =String.Format("javascript:OpenDialog('{0}/Lists/Events/EditForm.aspx?ID={{0}}');", web.Url) };