मैं एक पेज बना रहा हूं जिसमें जावास्क्रिप्ट द्वारा प्रदान की गई कुछ बातचीत है। उदाहरण के रूप में: लिंक जो लेखों की सामग्री प्राप्त करने के लिए AJAX अनुरोध भेजते हैं और फिर उस डेटा को एक div में प्रदर्शित करते हैं। स्पष्ट रूप से इस उदाहरण में, मुझे अतिरिक्त जानकारी को संग्रहीत करने के लिए प्रत्येक लिंक की आवश्यकता है: लेख की आईडी। जिस तरह से मैं मामले में इसे संभाल रहा हूं वह उस जानकारी को href लिंक में डालना था:
<a class="article" href="#5">
मैं a.article तत्वों को खोजने और उचित ईवेंट हैंडलर को संलग्न करने के लिए jQuery का उपयोग करता हूं। (यहाँ प्रयोज्य या शब्दार्थ पर मत लटकाओ, यह सिर्फ एक उदाहरण है)
वैसे भी, यह विधि काम करती है, लेकिन इसमें थोड़ी सी बदबू आती है, और यह बिल्कुल भी एक्स्टेंसिबल नहीं है (क्या होता है अगर क्लिक फ़ंक्शन में एक से अधिक पैरामीटर हैं? क्या होगा यदि उन मापदंडों में से कुछ वैकल्पिक हैं?)
तुरंत स्पष्ट उत्तर तत्व पर विशेषताओं का उपयोग करना था। मेरा मतलब है, यह वही है जिसके लिए वे सही हैं? (एक प्रकार का)।
<a articleid="5" href="link/for/non-js-users.html">
में मेरी हाल ही में सवाल मैं पूछने पर कि क्या इस विधि मान्य था, और यह मेरे अपने DTD को परिभाषित (मैं नहीं), तो नहीं, यह वैध या विश्वसनीय नहीं है की है कि कम पता चला है। एक सामान्य प्रतिक्रिया डेटा को class
विशेषता में डालने के लिए थी (हालांकि यह मेरे खराब चुने गए उदाहरण के कारण हो सकता है), लेकिन मेरे लिए, यह और भी अधिक बदबू आ रही है। हां यह तकनीकी रूप से मान्य है, लेकिन यह एक महान समाधान नहीं है।
एक अन्य विधि जिसका मैंने अतीत में उपयोग किया था, वह वास्तव में कुछ JS उत्पन्न करना था और इसे एक <script>
टैग में पृष्ठ में सम्मिलित करना था , जिससे एक ऐसी संरचना का निर्माण होगा जो वस्तु के साथ जुड़ेगी।
var myData = {
link0 : {
articleId : 5,
target : '#showMessage'
// etc...
},
link1 : {
articleId : 13
}
};
<a href="..." id="link0">
लेकिन यह बनाए रखने के लिए बट में एक वास्तविक दर्द हो सकता है और आम तौर पर सिर्फ बहुत गड़बड़ है।
तो, इस सवाल पर जाने के लिए, आप HTML टैग के लिए जानकारी के मनमाने टुकड़े कैसे संग्रहीत करते हैं ?