エラーが発生する理由を理解しようとしています:
"window.opener.document.aspnetForm.formType is null or not an object".
親ウィンドウから URL 文字列を介してポップアップ ウィンドウに値を渡しています (この子ウィンドウは検索フォームです)。この値は、SharePoint フォーム フィールドの ID です (このようにする必要があるのには理由があります。値は、それが newform または editform からのものかどうかを示します)。子ウィンドウの関数 (geturlvalue()) を使用して、url 文字列で取得した値から変数 formType を宣言しています。
var formType = geturlvalue(name);
変数「formType」は子ウィンドウで正常に機能しており、ウィンドウオープナーが親ウィンドウからの正しい値を表示する前に警告します。
ctl00_m_g_004d943c_bb99_4fba_bee5_68862443b98d_ctl00_ctl04_ctl18_ctl00_ctl00_ctl04_ctl00_ctl00_TextField
子ウィンドウのオープナーは次のとおりです。
window.opener.document.aspnetForm.formType.value = document.getElementById('Server').value;
オープナーは、サーバーの ID を持つ子ウィンドウ フィールドの値から、親ウィンドウの入力フィールドに入力する必要があります。
なぜformTypeでエラーが発生するのか、誰にも分かりますか? formType の代わりにオープナーに追加ctl00_m_g_004d943c_bb99_4fba_bee5_68862443b98d_ctl00_ctl04_ctl18_ctl00_ctl00_ctl04_ctl00_ctl00_TextField
すると、正常に機能し、親入力フィールドにデータが入力されます。
window.opener.document.aspnetForm.ctl00_m_g_004d943c_bb99_4fba_bee5_68862443b98d_ctl00_ctl04_ctl18_ctl00_ctl00_ctl04_ctl00_ctl00_TextField.value = document.getElementById('Server').value;