سؤال

لدي تطبيق Richfaces. في الصفحة ، هناك وظيفة jQuery محددة:

<rich:jQuery timing="onJScall" name="updateUrlHash" selector="#conversationId" 
    query="alert('in jquery call');" />

ثم لدي بعض A4J: CommandLink ، والتي يجب أن تستدعي الوظيفة عند إكمال طلب AJAX.

<a4j:commandLink value="test" oncomplete="updateUrlHash(this)" />

لسوء الحظ أنها لا تعمل. أعرف أن Oncomplete يعمل ، لأنه إذا وضعت هناك alert('test');, ، يظهر في حالة تأهب. لكن عندما أحاول الاتصال updateUrlHash وظيفة ، لا تعمل. لقد راجعت في مصدر الصفحة هذه الوظيفة موجودة. ما يمكن ان يكون خطأ؟

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

المحلول

لقد وجدت ذلك. تم استدعاء الاستعلام على الكائن الذي تم اختياره بواسطة jQuery Selector. لذلك في مثل هذا ، في JavaScript هو هو

jQuery(selector).alert('in jquery call');

هذا بالطبع لا يمكن أن يعمل. لذلك أحتاج إلى استدعاء أي شيء على العنصر المحدد ، وبعد ذلك يمكنني أن أفعل ما أريد:

query="hide(); alert('this works');"

في JavaScript بعد ذلك (يتم إخفاء العنصر المحدد على أي حال):

jQuery(selector).hide(); alert('this works');
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top