拜托,帮助我!
我需要修改标准对话框表格的宽度,以便将元素添加到库中。
如果我点击功能区按钮添加元素,则表单以width = 402px:
打开<div class="ms-dlgContent" role="dialog" aria-labelledby="dialogTitleSpan" tabindex="-1" style="z-index: 1505; display: block; width: 402px; height: 294px; left: 430px; top: 104px; "></div>
如果我在当前库的所有元素下单击按钮,则表单以width = 1032px:
打开<div class="ms-dlgContent" role="dialog" aria-labelledby="dialogTitleSpan" tabindex="-1" style="z-index: 1505; display: block; width: 1032px; height: 267px; left: 115px; top: 273px; "></div>
我无法理解,在宽度= 402px的第二种情况下打开我需要做什么。
也许需要在Upload.aspx中输入一些代码? (此表单自动生成) 我想,这个页面打开用于创建新元素,因为我的列表定义的schema.xml包含以下代码:
<Forms>
<Form Type="DisplayForm" SetupPath="pages\form.aspx" Url="Forms/DispForm.aspx" WebPartZoneID="Main" />
<Form Type="EditForm" SetupPath="pages\form.aspx" Url="Forms/EditForm.aspx" WebPartZoneID="Main" />
<Form Type="NewForm" Url="Forms/Upload.aspx" WebPartZoneID="Main" />
</Forms>
但是如果修改了Upload.aspx的这一部分(添加.ms-dglContent类),它对我没有帮助:
<asp:Content ContentPlaceHolderId="PlaceHolderBodyAreaClass" runat="server">
<style type="text/css">
.ms-bodyareaframe {
padding: 8px;
border: none;
}
.ms-dglContent {
width:402px!important;
}
</style>
</asp:Content>
如果我修改css文件:
.ms-dglContent {width:402px!important;}
它修改所有对话框表单,但在我的情况下是不可接受的。
我会很感激任何帮助的尝试!
答案 0 :(得分:2)
模态对话框div动态放入DOM。如果想要修改对话框维度,请尝试查找类似SP.UI.ModalDialog ...
的调用var dialogCallbackToMainSite = function (dialogResult, returnValue) {
if(returnValue == 'someValue') {
}
};
var option = {
url:record.data.url,
title:'Task',
allowMaximize:false,
showClose:false,
autoSize:false,
width: 800,
height: 600,
dialogReturnValueCallback:dialogCallbackToMainSite
};
SP.UI.ModalDialog.showModalDialog(option);
BTW如果您需要垂直居中对话框,当色带滚动页面且其静态位置被禁用时请遵循此解决方案http://generation12.wordpress.com/2011/10/25/floating-the-sp-ui-modaldialog/
答案 1 :(得分:0)
我不习惯在Sharepoint工作,但在我看来,触发显示对话框的功能在某种程度上提供了不同的测量变量值,所以是的,您可能需要在某处更改代码。尝试在整个解决方案中搜索“1032” - 也许将宽度测量值分配给某个变量。
如果你想让两个对话框看起来都一样,但是无法找到它们的测量位置(尽管我强烈建议你先尝试一下),你也许可以通过使用!important来覆盖内联样式。 ,像这样:
.ms-dglContent {width:402px!important;}