خطأ JavaScript عند محاولة فتح نافذة مشروط في نافذة مشروطة

StackOverflow https://stackoverflow.com/questions/2646561

  •  27-09-2019
  •  | 
  •  

سؤال

يتم تشغيل التطبيق على مربع Windows Server 2003 باستخدام ASP.NET 2.0 وهو تطبيق ويب محدد. يوجد زر يفتح نموذجًا في iframe باستخدام ShowModaldialog (...) من استدعاء دالة موجودة في JavaScript.

فيما يلي مثال على الوظيفة:

    function ShowBusinessHoursSubForm( source )
{
    var retval = window.showModalDialog("htm/" + locLocaleID + "/SubFormHostFrame.htm", source, "dialogWidth:265px;dialogHeight:261px;help:no;scroll:no;status:no;");

}

يقوم إطار المضيف بتحميل صفحة ASPX التي تحتوي على النموذج الفعلي المستخدم. في النموذج الذي يتم فتحه ، يوجد زر ، عند النقر فوقه ، يخضع إلى النموذج. ومع ذلك ، إذا لم يتم تغييره قبل تقديم النموذج ، تنبثق نافذة مشروطة أخرى تفيد بأنه لم يتم تغييره إلى النموذج. يتم فتح هذه النافذة المشروطة من خلال تسجيل بعض JavaScript في حدث Click Click. الرمز كما يلي (C#):

string l_S_ErrorScript = "<script type='text/javascript' language='javascript'>window.showModalDialog('htm/" + l_S_Culture + "/NotChangedErrorDialog.htm', '../../" + l_S_SkinPath + "', 'dialogWidth:310px;dialogHeight:145px;scroll:no;help:no;status:no;');</script>";

if(!m_Page.ClientScript.IsStartupScriptRegistered("ErrorScript"))
        {
            m_Page.ClientScript.RegisterStartupScript(this.GetType(), "ErrorScript", l_S_ErrorScript);
        }

عند النقر فوق الزر ويجب أن يظهر مربع الحوار هذا ، يظهر خطأ JavaScript التالي:

خطأ: الكائن لا يدعم هذه الخاصية أو الطريقة

الشيء الغريب هو ، إذا قمت بالوصول إلى التطبيق محليًا وجربته ، كل شيء يعمل بشكل جيد ، لكن الوصول من جهاز كمبيوتر آخر يسبب الخطأ. أيضًا ، اعتمادًا على الخادم (لدينا العديد من الخوادم لاختبار الكل مع Windows Server 2003) قد لا يحدث الخطأ على جهاز كمبيوتر آخر أيضًا. تقوم أجهزة الكمبيوتر هذه بتشغيل نفس إصدار البرنامج باستخدام نفس الإصدار من IE مع نفس الإعدادات. أنا أميل إلى الاعتقاد بأن هناك مشكلة في التكوين في مكان ما ، ولكن مع كون الإعدادات هي نفسها من الصعب تحديدها. لا يمكنني تغيير كيفية عمل التطبيق أو التقنيات المستخدمة أيضًا.

أي شخص لديه أي أفكار حول ما قد يسبب هذا؟

هل كانت مفيدة؟

المحلول

كانت المشكلة مع مانع التنبؤ في IE على جهاز العميل. نظرًا لأنه تم فتح النافذة المشروطة في نافذة مشروطة أخرى ، لم يعتبر مانع المنبثقة جزءًا من الوالد ويعتقد أنه يجب حظره. بعد إضافة الموقع إلى مانع منبثقة كل شيء يعمل.

كيف سخيفة!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top