سؤال

خلفية:

أنا أستخدم JQuery Blockui 2.31 على jQuery 1.3.2 ، على ASP.NET 2.0.

أنا أستخدم مربع الحوار لإظهار Div المخفي (عادةً) كنوع من مربع حوار منبثقة ، مع عناصر تحكم جانب خادم ASP.NET (من أجل البساطة ، ASP: Button). لا يوجد أياكس ، أو لا يضمن أن يكون أي.

أحد الأشياء التي يقوم بها JQuery blockui ، إذا قمت بتمريرها ببعض عناصر HTML-فهل سيقوم بإزالة عنصر التحكم من مكانه في الصفحة ، وإلحاقه بـ هيئة.

يبدو أن ASP.NET 2.0 يريد عناصر التحكم التي تنشر في العودة إلى شكل يمكنك أن تجد مع $ (#ASPNETForm). JQuery Blockui نقلهم للتو إلى هيئة, ، إذن postback أبدا الحرائق.

الطريقة هي طريقة مثيل وربما لن تعمل بشكل جيد (المراجع التي تم تسجيلها في عناصر التحكم في المستخدم والصفحة ...)

لقد فعلت بعض الحفر:

لقد قمت بتعديل jQuery blockui لإلحاق النموذج (وتصارع مع المحدد لإزالة الكتلة) ولكنه يحتل IE6 و IE7-يبدأ التراكب في النموذج ويبدو أن مربع الحوار بالكامل خارج المركز. إن إخفاء التراكب ليس خيارًا ، وأنا أكره حقًا العبث باستخدام برنامج CSS الخاص بـ IE و IE.

حاولت إلحاق بعض الطبقات بالجسم والبعض الآخر إلى النموذج ، لكن طبقات الجسم تظهر دائمًا أعلى طبقات النموذج (وبالتالي فإن الطبقة المعتمة التي تحظر الإدخال ستحظر أيضًا الإدخال على Div الذي أحاول عرضه).

أفكر في أن الحل هو استدعاء Div مرساة دمية مخفية لتنفيذ Postbuct Postrical Bostrical. Sontek اقترح هذا في إجابته على سؤال ذي صلة.

سؤالي الفعلي:

هل أنا على المسار الصحيح مع خدعة البريد المزيفة؟ أفترض أنه إذا كنت أعتمد على JQuery في وظائف الحوار الوسيط ، فلن أشعر بالقلق من الاحتياطي.

أو ، هل يجب أن أستمر في التواجد مع تصميم الإضافة النموذجية؟

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

المحلول

أنت عالق إلى حد كبير وضع العلامات مرة أخرى داخل علامة النموذج إذا كنت تريد سلوك ASP.NET العادي مثل الأحداث التي تطلق النار.

ومع ذلك ، إذا كنت عالقًا في استخدام وسيط jQuery ، فلا أعتقد أن إبداع Postback أمر سيء. كما ذكرت من السؤال المرتبط/ذات الصلة ، يمكنك الحصول على مرجع Postback GetPostBackEventReference في الكود الخاص بك ومرر في السيطرة من هو الحدث الذي تريد إطلاقه ، مثل:

//assuming your button is btnMyButton and
Page.ClientScript.GetPostBackEventReference(btnMyButton, null);

يمكنك إرفاق مكالمة JavaScript هذه على أي زر آخر ، بما في ذلك الزر الذي تتنقل فيه خارج علامة النموذج. سيؤدي ذلك إلى توصيل البرد ورفع أحداث التحكم كالمعتاد.

ليس الحل الأكثر أناقة ، لكنني أعتقد أنك على المسار الصحيح معه إذا كنت بحاجة إلى استخدام JQuery Modal.

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