مشكلة عدم عمل jQuery بعد تحميل محتوى معين ب Ajax

لنفرض أننا قمنا بتحميل محتوى وحقنه في صفحة ويب، باستخدام هذا الكود مثلاً:

 <script>
$.post('/ajax/data.php', {send:"anything"}, function(data, status){
    $('.content').html(data);
});
</script>

بعد أن قمنا بحقن المحتوى، أريد أن أقوم بتنفيذ أوامر ب jQuery معينة على الكود المحمل ب Ajax

كل شيء يعمل يتم إستدعاء المحتوى ، ويتم حقنه.

ولكن بعد التحميل خواص jQuery لا تعمل عليه، أو أي أوامر ب Javascript.

هذا سؤال في StackOverFlow يشرح مشكلتي، وله حل، والحل يعمل، ولكن كيف سوف أستخدم إضافات jQuery وأعدل عليها، لتوافق ذلك الحل.

أرجوا أن تفهموا، فأنا سيء بالشرح جداً :)

يرجى الدخول لحسابك أو تسجيل حساب لتستطيع إضافة تعليق
حساب جديد دخول

التعليقات

ضع الكود في دالة ولنقل init مثلاً

   function init(){
        $(".foo").on("click",function(){
            alert("hello");
        });
   }

وعند الانتهاء من ال ajax قم باستدعاء الدالة init لان المحتوي الجديد لم يتم تطبيق عليه الاحداث .

حل جميل ، وفعّال.

ولكن المشكلة أيضاً في بعض أدوات Bootstrap حيث أنها لا تعمل بعد التحميل ب Ajax.

هل لديك عن Angular وإذا استخدمته، هل سوف تحل المشكلة ؟

لأنني أنوي عمل تطبيق Single Page App ولكن قلت لن أضيع وقتي في تعلم شيء جديد الآن، وقررت العمل عليه باستخدام jQuery.

ما هي الادوات التي تستخدمها ممكن الكود ؟

هذه هي التي لا تعمل:

هذه الاجابة قد تفيد

عند حقن محتوى فأحداث jQuery كـ click وغيرها لا تعمل بعد الحقن، فحلها هو إستخدام نفس الأحداث عبر on أو delegate

الفكرة انك تقوم بتنفيذ الكود قبل وجود العناصر أصﻻ

بمعنى لو كان لديك div له id=myDiv فكيف انفذ امر على هذا العنصر قبل ان يوجد اصﻻ

فيكون الحل كما ذكر supercoder مﻻئم

وبالنسبة ل bootstrap فنفس الفكرة

ان تقوم بالتطبيق بعد استدعاء العناصر

على كل خطر ببالي حل الان .. بعد تحميل العناصر اعد استدعاء اكواد css , js مرة اخرى

^

حل منطقي لكن لم اجربه قبل

-1

السلام عليكم،

قم بقراءة هذا المنشور: