كيفية ربط بعض من وظيفة إلى عنصر غير موجود؟

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

  •  05-07-2019
  •  | 
  •  

سؤال

ومشكلتي: بعد تحميل بعض العناصر عن طريق اياكس، ط ربط البعض على مزدوجا فوق وظيفة، ولكن عندما المستخدم سيتم تحميل عدة مرات في نفس العنصر، والعمل binded سوف يكون تكرار (لا يحل، على الأقل هذا يبدو). حاولت unbind، أو click(function(){return false;}); ولكن هذا العمل الكامل إزالة أنقر من عنصر ...). ما هو الحل القياسية لهذا النوع من المشكلة؟

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

المحلول

لمعظم الأحداث يمكنك استخدام live() (مسج 1.3 +):

$("td").live("click", function() {
  // do stuff
});

وهذا سوف ربط الحدث انقر فوق ل<td> العناصر التي تأتي إلى حيز الوجود بعد تشغيل هذا الرمز أيضا.

وهذا هو الحل أنظف بكثير من محاولة لربط / إلغاء التوثيق والتأكد من لم يكن لديك نفس الحدث ملزمة مرتين لعنصر معين.

نصائح أخرى

وإذا كنت تستخدم مسج 1.3.2، يمكنك استخدام $('').live('click', function() {}); لديك أي العناصر التي تطابق محدد لديهم عمل. إنها تحافظ على الحدث في جميع أنحاء حتى مع عناصر جديدة.

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