मेरे पास एक HTML फॉर्म है, और मुझे जावास्क्रिप्ट के साथ विकल्प मानों को पढ़ने की जरूरत है। तो जब मेरे पास यह है:

<select class="login-input" name="Provenance" id="Provenance">
           <option value="">--- Provenance ---</option>
           <option value="N">Collection </option>
           <option value="P" data1="P">Prévente</option>
</select>

इसके साथ ठीक काम करता है:

document.getElementById('Provenance').value

लेकिन जब मैं एक कस्टम चर मॉडलकोड जोड़ता हूं तो मुझे नहीं पता कि मूल्य कैसे प्राप्त करें:

<select class="login-input" name="Modeles" id="Modeles">
    <option value="">--- Code modele ---</option>
    <option value="00" modelcode="A">A</option>
    <option value="01" modelcode="B">B</option>
    <option value="03" modelcode="C">C</option>
</select>

मैं मॉडलकोड मान पढ़ना चाहूंगा।

कोई विचार ? धन्यवाद

1
Megalf 12 अक्टूबर 2021, 13:55
क्या आप अपनी परियोजना में jQuery का उपयोग कर रहे हैं?
 – 
Gianfrancesco Aurecchia
12 अक्टूबर 2021, 14:02
JQuery टैग नहीं है और स्निपेट वेनिला जेएस में है इसलिए मुझे संदेह है। (jQuery पर विचार करना अप्रचलित है)। @Megalf, मैंने वर्णन किया है कि आपके HTML विशेषताओं में मूल्यों को संग्रहीत करने के लिए डेटा विशेषता का उपयोग कैसे किया जा सकता है, अगर वह मदद करता है तो मुझे बताएं। साथ ही, मैं id को रूप में उपयोग करने की सलाह नहीं दूंगा, इसके बजाय, मैं documents.forms[name] एक्सेसर का उपयोग करके अपने फॉर्म और लक्ष्य को फॉर्म स्कोप के भीतर से नाम दूंगा
 – 
Dimitri Kopriwa
12 अक्टूबर 2021, 14:06
मैं jQuery का उपयोग नहीं करता
 – 
Megalf
12 अक्टूबर 2021, 17:05

1 उत्तर

सबसे बढ़िया उत्तर

HTML5 में, आप उदाहरण के रूप में अपनी विशेषताओं में डेटा संग्रहीत करने के लिए data- विशेषताओं का उपयोग कर सकते हैं:

window.onload = () => {
  const select = document.getElementById('modeles')
  select.addEventListener('change', onModelChange, true)
}

function onModelChange(event) {
  if (event.target.value) {
    const { value, options } = event.target
    console.log({ 
      value, 
      ...options[options.selectedIndex].dataset
    })
  } else {
    console.log('no selection')
  }
}
<select name="modeles" id="modeles">
    <option value="">--- Code modele ---</option>
    <option value="00" data-modelcode="A">A</option>
    <option value="01" data-modelcode="B">B</option>
    <option value="02" data-modelcode="C">C</option>
    <option value="03" data-modelcode="D">D</option>
</select>

यह अवधारणा है, परिचित करने के लिए, आप और अधिक पढ़ सकते हैं: https://developer.mozilla.org/en-US/docs/Learn/HTML/Howto/Use_data_attributes

1
Dimitri Kopriwa 12 अक्टूबर 2021, 14:03
धन्यवाद। मुझे कुछ गलत करना चाहिए, क्योंकि जब मैं इसे एक चर में संग्रहीत करने का प्रयास करता हूं तो मुझे "अपरिभाषित" मिलता है। मैंने लिखा: element.getAttribute('modelecode')
 – 
Megalf
12 अक्टूबर 2021, 17:25
यदि आप getAttribute का उपयोग करते हैं, तो आप element.getAttribute('data-modelcode') कर सकते हैं, लेकिन मैं डेटासेट का उपयोग करने की सलाह दूंगा, क्योंकि यह डेटासेट को संग्रहीत करने के लिए बनाया गया था।
 – 
Dimitri Kopriwa
12 अक्टूबर 2021, 18:38
बहुत बहुत धन्यवाद दिमित्री :)
 – 
Megalf
13 अक्टूबर 2021, 01:52