मुझे उन तत्वों को अद्यतन करने में समस्याएं आ रही हैं जो AJAX अनुरोध के बाद तैयार नहीं हैं।AJAX अनुरोध के बाद jQuery दस्तावेज़ तैयार
अगर मैं ऐसा तरह पृष्ठ लोड पर मेरी myFunction()
समारोह चलाएँ:
$(function() {
myFunction();
}
मैं सभी में कोई समस्या है। लेकिन अगर मैं तो जैसे
$.ajax({
url: this.href,
dataType: "script",
complete: function(xhr, status) {
myFunction();
}
});
जो $(".myElement").replaceWith("htmlHere")
रिटर्न कुछ का उपयोग करें। पूर्ण घटना आग लगने पर तत्व बस तैयार नहीं होते हैं। अगर मैं वहां देरी करता हूं तो यह फिर से ठीक काम करता है।
क्या कोई अन्य घटना है जो डोम तैयार होने पर 'पूर्ण' के अलावा निकाल दिया जाता है?
अद्यतन:
यहाँ वास्तविक कोड है:
$(function() {
$("a.remote").live("click", function(e) {
$.ajax({
url: this.href,
dataType: "script",
success: function(xhr, status) {
myFunction();
}
});
e.preventDefault();
return false;
});
myFunction();
});
function myFunction() {
// Modify the dom in here
}
लापता); मेरे हिस्से पर सिर्फ एक टाइपो था।
Ive ने पूर्ण होने की बजाय सफलता का उपयोग करने का प्रयास किया और यह कोई फर्क नहीं पड़ता।
क्या आप $ .ajax की सफलता घटना पर करते हैं? क्या कोई ऐसा कार्य है जिसे आपको अपने प्रश्न में शायद उल्लेख करना चाहिए? –
आप * सभी * अपना कोड एक बड़े '$ (फ़ंक्शन() {...}) के अंदर रखना चाहते हैं; 'हैंडलर। इस तरह आपके पास कभी भी ऐसे मुद्दे नहीं हैं ... ऐसा करने से बीटीडब्ल्यू आपको एक नामस्थान भी देता है, जिसे आपको वैसे भी चाहिए। –
Ive ने अद्यतन कोड के साथ मूल प्रश्न को अद्यतन किया। – Danny