मैं यहां इनपुट आईडी प्राप्त करना चाहता हूं और इसका उपयोग इनपुट रंग को ग्रे होने के लिए बदलने के लिए करता हूं। फिर हरे रंग के साथ अन्य इनपुट के लिए प्रक्रिया दोहराएं

var getGreenColor = document.getElementsByClassName("my_inputs")[0].style.color;

if (getGreenColor == "green") {
  console.log("green")
}
else console.log(getGreenColor)
<input type="text" style="color: green;" id="1" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="2" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="3" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="4" class="my_inputs" value="stuff">
0
Job Gondwe 25 पद 2021, 13:36
सुनिश्चित नहीं है कि आपका प्रश्न वास्तव में क्या है, लेकिन .color के बजाय, आप जो संपत्ति चाहते हैं वह .style.color है; शायद तुम इसी के पीछे हो?
 – 
Raxi
25 पद 2021, 13:40

4 जवाब

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

तो जो मैं समझता हूं, आप हरे रंग के टेक्स्ट वाले सभी इनपुट को ग्रे में बदलना चाहते हैं। यदि ऐसा होता, तो आप निम्न कार्य करके तत्वों को प्रश्न में लाना चाहेंगे:

var greenInputsArray = document.getElementsByClassName("my_inputs");

और फिर आप सरणी के माध्यम से लूप कर सकते हैं और यदि रंग हरा है, तो आप रंग को ग्रे में निम्नानुसार बदल सकते हैं:

for (var i = 0; i < greenInputsArray.length; i++) {
    if(greenInputsArray[i].style.color == "green") {
       greenInputsArray[i].style.color = "grey";
    }
}
0
Khalid Fazal 25 पद 2021, 14:08

यदि आपका रंग हमेशा इनलाइन सेट है तो आप सीएसएस विशेषता चयनकर्ता भी कर सकते हैं:

input[style="color: green;"]:first-of-type {
  background: red;
}
<input type="text" style="color: green;" id="1" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="2" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="3" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="4" class="my_inputs" value="stuff">
0
Jean Will 25 पद 2021, 13:46

महज प्रयोग करें

var elements = document.getElementsByClassName('my_inputs');
for (let a=0; a < elements.length; a++) {
    if (elements[a].color == 'green') {
        elements[a].color = 'grey';
    }
}

यह तत्वों के माध्यम से लूप करेगा और यदि यह हरा है, तो इसे ग्रे में बदल दें।

0
Cheng Adrian 25 पद 2021, 13:43
नहीं यह नहीं होगा। कोशिश करो
 – 
mplungjan
25 पद 2021, 13:48

आपको style.color या getComputedStyle चाहिए

शैली। रंग अपरिभाषित है यदि इनलाइन नहीं है

const getColor = ele => ele.style.color || window.getComputedStyle(ele).color;

document.querySelectorAll(".my_inputs").forEach((ele,i) => {
  const color = getColor(ele);
  console.log(i,color)
  if (color === "green" || color === "rgb(0, 128, 0)") {
    ele.style.color = "grey"
  }
})
#id1 {
  color: green;
}
<input type="text" style="color: green;" id="id2" class="my_inputs" value="stuff" />
<input type="text" id="id1" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="id3" class="my_inputs" value="stuff">
<input type="text" style="color: red;" id="id4" class="my_inputs" value="stuff">
<input type="text" style="color: green;" id="id5" class="my_inputs" value="stuff">
0
mplungjan 25 पद 2021, 14:07