2012-11-13 15 views
14

मेरी साइट पर दिए गए लिंक काम नहीं करते हैं और मुझे अपने एंकरों पर सही स्पष्टीकरण के बिना data-ajax="false" का उपयोग करने का समाधान मिला है। क्या कोई मेरी मदत कर सकता है?डेटा-AJAX = "झूठी" वास्तव में क्या करता है?

उत्तर

26

data-ajax jQuery मोबाइल की एक विशेषता है। डिफ़ॉल्ट रूप से जेक्यूएम बेहतर उपयोगकर्ता अनुभव और संक्रमण के लिए AJAX के माध्यम से पृष्ठों को लोड करने का प्रयास करेगा। यदि आप data-ajax='false' सेट करते हैं तो JQM AJAX का उपयोग करने के बजाय सामान्य पृष्ठ अनुरोध करेगा। इसका उपयोग फॉर्म और लिंक पर भी किया जा सकता है।

docs से:

यह URL

में अजाक्स हैश बाहर खाली करने के लिए ढांचा पूरा पृष्ठ पुनः लोड करने के लिए कहता है तो आप अपने लिंक के सभी पर ajax अक्षम करना चाहते हैं सब कुछ करने के लिए data-ajax जोड़ने की तो बजाय, आप इसे इस तरह कर सकते हैं:

$(document).bind("mobileinit", function() { 
    $.mobile.ajaxEnabled = false; 
}); 
+0

क्या मेरा पूरा अनुरोध "सामान्य" बनाने का कोई तरीका है? –

+0

यह जानना अच्छा है – rpax

+2

यह एक समस्या है जो मैंने प्लगइन के साथ कभी-कभी लोड नहीं होने पर प्लगइन के साथ किया था .. धन्यवाद! – jason

2

कुछ भी नहीं।

data-* विशेषताओं का एक सामान्य सेट है जिसे आप जावास्क्रिप्ट द्वारा एक्सेस के लिए डेटा स्टोर कर सकते हैं।

जब तक आपके पास कुछ जावास्क्रिप्ट नहीं है जो उनके साथ व्यवहार करते हैं, तो वे व्यर्थ हैं।

jQuery में कुछ भी नहीं बनाया गया है जो उनके साथ कुछ भी करता है।

+0

, घटना प्रतिनिधिमंडल के लिए इस्तेमाल किया जा सकता बात यह है कि यह काम करता है है। मेरे पास एक वेबसाइट है जहां मुझे इसके लिए एक उत्तरदायी डिजाइन करने के लिए, अपमान को बदलना पड़ा। और मैंने खुद को ऐसे लिंक के साथ पाया जो काम नहीं करते –

+0

यदि "यह काम करता है" तो ऐसा इसलिए होता है क्योंकि कुछ जावास्क्रिप्ट इसके साथ कुछ कर रहा है। स्वीकृत उत्तर मानता है कि आप jQuery मोबाइल का उपयोग कर रहे हैं। आपने सवाल में कभी नहीं कहा था। – Quentin

-1

यदि आप एक तत्व टी की विशेषता निर्धारित ओ डेटा-नाम, आप, jQuery के माध्यम से, यह $('element').attr('data-name'); के बजाय $('element').data('name') का उपयोग कर प्राप्त कर सके, लेकिन data-* गुण अभी भी तरह $(document).on('click', '[data-name]', function(){});