2012-06-26 16 views
5

मैं jQuery मोबाइल में बटन पर क्लिक करके div कंटेनर के लिए किसी अन्य फ़ोल्डर में मौजूद पृष्ठ की सामग्री लोड करना चाहता हूं (उदाहरण: "फ़ाइलें/पृष्ठ/example.html")!लोड पेज को एक div में jQuery jQuery

यह कैसे करें?

<div data-role="page"> 
    <div id="container" data-role="content"><button id="clickButton">Click me!</button></div> 
</div> 
+0

मैं एक प्रश्न है। क्या आप ब्राउज़र में परीक्षण कर रहे हैं? यदि नहीं, तो क्या आपने support.cors को जोड़ा और क्रॉसडोमेन पेजों को अनुमति दी? – Th0rndike

उत्तर

1

$ .mobile.loadPage विधि आप की जरूरत है। यह आपको बाहरी HTML फ़ाइल लोड करने और इसे डोम में डालने की अनुमति देता है। इस विधि के लिए डिफ़ॉल्ट इसे पूरे पृष्ठ के रूप में लोड करना है, इसलिए आपको इसे डोम तत्व में लोड करने के लिए विकल्प निर्दिष्ट करना होगा। यह एक उदाहरण है (और अवांछित) कोड:

$('#clickButton').on("click",function(){ 
    $.mobile.loadPage("theURLofThePage",{pageContainer: $('#container')}) 
}); 

अब, क्रॉसडोमेन सुरक्षा समस्या के बारे में न भूलें। मैं जोड़कर फ़ायरफ़ॉक्स में इस काम करने के लिए कामयाब रहे:

$("#landingPage").live('pageinit', function() { 
      jQuery.support.cors = true; 
      $.mobile.allowCrossDomainPages=true; 
     }); 

साथ ही, पृष्ठ आप लोड कर रहे हैं एक डेटा भूमिका = पेज में लिपटे किया जाना चाहिए div (मान लें कि यह आईडी = 'secondpage' है भी नहीं)। लोड, आईडी = secondpage div साथ डेटा भूमिका = पेज पर ट्रिगर करने के बाद:

$('#secondPage").trigger('pagecreate'); 
+0

मैंने पहले से ही कोशिश की थी लेकिन यह पृष्ठ लोड नहीं करता है। –

+0

और क्या हुआ? कोड कहां है? आपको क्या त्रुटियां मिलीं? यह करने का यह मानक तरीका है, अगर यह काम नहीं करता है तो आपके कोड में कुछ गलती हुई थी, लेकिन निश्चित रूप से मैं (और एसओ समुदाय) आपकी मदद नहीं कर सकता अगर आप हमें नहीं दिखाते कि आपने क्या प्रयास किया है और कौन सा जिस तरह से आप रास्ते में पाए गए समस्याएं। – Th0rndike

+0

मुझे खेद है। मैंने उस कोड की कोशिश की जो मैंने पोस्ट की शुरुआत में और आपके jQuery कोड को पृष्ठ लोड करने के लिए दिया था (बस .on से .live तक ले जाया गया और loadPage फ़ंक्शन के अंत में ';' जोड़ा गया)। कोई त्रुटि नहीं है (सिम्युलेटर आईओएस का उपयोग करके) और कुछ भी नहीं करता है! मैंने "अलर्ट (('# कंटेनर') करने का प्रयास किया। Html())" लोडपेज फ़ंक्शन के बाद, लेकिन अलर्ट कहता है कि div #container खाली है (अलर्ट पर कुछ भी नहीं दिखाता है)। –

संबंधित मुद्दे