سؤال

وأنا تطوير عنصر تحكم مستخدم ولها زر asp.net داخل مسج الحوار ولكن عند الضغط على زر لا يحدث أي شيء يعني أنه لا يدعو الحدث نقرة زر على جانب الخادم، لقد حاولت

dlg.parent().appendTo(jQuery("form:first")); 

ولكن ذلك لم يساعدني جدا، هل من الممكن و لتحقيق هذا UserControl asp.net داخل؟ كما أنني أتساءل عما إذا كان يمكن استخدام UpdatePanel داخل الحوار أم لا؟

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

المحلول

ويمكنك جعل زر زر الحوار ووضع زر asp.net على الصفحة مع معرف HiddenButton والتفاف عليه في شعبة مع نمط من display:none;

وهكذا الزر غير مرئية. (يجب أن لا تكون مرئية = "كاذبة" حتى يتم تقديم زر)

في جافا سكريبت الحوار إضافة الزر الذي له تأثير النقر على الزر المخفي

  jQuery("#dialog").dialog({
        buttons: {
            'ButtonText': function() {
                //save the session
           __doPostBack('<%# HiddenButton.ClientID %>', '')
                jQuery(this).dialog('close');
            }
        }
    });

وإضافة آسيا والمحيط الهادئ فوق معالج زر مخفي

<div style="display:none;">
    <asp:Button ID="HiddenButton" OnClick="HiddenButton_Click" ></Button>
<div>

وانقر الحدث على جانب الخادم سوف النار عندما يتم النقر على زر الحوار

وآمل أن يساعد هذا يمكنني استخدام هذا النمط في كل وقت

نصائح أخرى

وأظن أنه قد يكون من أن تفعل شيئا مع ASP.NET عدم القدرة على العثور على زر في النموذج.

استخدم الإعداد الحدث .live في مسج - ربط الحدث قبل إنشاء الحوار باستخدام .live وينبغي لها أن تعمل ...

الأحداث المباشرة في مسج

وسوف ينتهي بك الأمر مع شيء من هذا القبيل في وظيفة document.ready الخاص بك:


$("#btn").live("click", function(){
  // Do something
});


$("#dialog").dialog({
    ... 
}

وكان لي نفس المشكلة. انتهى بي الأمر سحب زر الخروج من مربع الحوار، إخفائه مع المغلق، ومن ثم تلجأ اليه من الحدث وثيق على الحوار (أنا ذاهب للقيام بذلك أكثر نظافة في وقت لاحق، ولكن هذا لا توضيح هذه المسألة، على الأقل).

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