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