我有以下情况: 在我的 Sharepoint 2010 ASP.Net 应用程序页面应用程序中,我希望允许我的用户为他们(用户)正在修改的信息的员工选择主管。由于各种原因,我需要调出一个带有 Telerik RadComboBox 的模式对话框和两个按钮:“提交”和“取消”。正常的处理过程是他们会单击父表单上的“选择主管”按钮,这会显示我的 SP.UI.ModalDialog.commonModalDialog ......这是代码:
function ShowDialog() {
var origSupCN = document.getElementById('<%= txtSupervisorCN.ClientID %>').value;
var origSup = document.getElementById('<%= txtSupervisor.ClientID %>').value;
var args = {SupervisorCn: origSupCN, Supervisor: origSup};
var _options = { title: "HR Employee Details",
showClose: false,
allowMaximize: false,
width:400,
height: 100,
args: args
};
var rtvalue = SP.UI.ModalDialog.commonModalDialogOpen("SupervisorDialog.aspx", _options, silentCallback);
}
这就是问题所在:如果用户单击“选择主管”按钮以调出该模式对话框,然后不想进行选择,我需要将文本框中的值返回为其原始值。所以我在“args”对象中传递原始值 - 这被传递给 ModalDialog,如果他们单击该 Modal 对话框上的“取消”按钮,我想将返回值设置为他们传入的值“args”对象 - 但我不知道如何访问这些 arg 对象。这是我到目前为止所拥有的:
function cancelForm() {
var dialogResult = SP.UI.DialogResult.OK;
var returnValue = Array();
returnValue[0] = SP.UI.ModalDialog.get_childDialog().get_args("SupervisorCn");
returnValue[1] = SP.UI.ModalDialog.get_childDialog().get_args("Supervisor");
SP.UI.ModalDialog.commonModalDialogClose(dialogResult, returnValue);
}
当用户在模态对话框上单击“取消”按钮时调用它 - 我试图将返回值设置为传递给模态对话框创建的原始值......哇,我不是确定在这一点上这是否有意义......我希望它确实如此。
基本上,我将一个 args 对象传递给 ModalDialog,如果用户单击“取消”按钮,我想从 JavaScript 方法中获取这些值,这样我就可以将返回值设置为传入的原始值......就是这样简而言之。但是当我在我的模态对话框中使用 JavaScript 时,我不知道如何引用“args”对象......
帮助赞赏!