次のような状況があります。Sharepoint 2010 ASP.Net アプリケーション ページ アプリで、ユーザー (ユーザー) が情報を変更している従業員のスーパーバイザーをユーザーが選択できるようにしたいと考えています。さまざまな理由から、Telerik RadComboBox と 2 つのボタン (「送信」と「キャンセル」) を備えたモーダル ダイアログ ボックスを表示する必要があります。通常の処理過程では、SP.UI.ModalDialog.commonModalDialog を表示する PARENT フォームの [スーパーバイザーの選択] ボタンをクリックします。そのためのコードは次のとおりです。
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 Dialog の「キャンセル」ボタンをクリックすると、戻り値を渡された値に設定したいと考えています。 「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」オブジェクトを参照する方法がわかりません...
助けてください!!