मैं एक ब्लॉक के पृष्ठभूमि रंग को बदलने की कोशिश कर रहा हूं जब एक रेडियो बटन, जो ब्लॉक के भीतर है, क्लिक किया जाता है।
मैंने यह किया लेकिन मुझे समझ में नहीं आता कि यह क्यों काम नहीं करता है। यहाँ कोड है:
$(document).ready(function() {
$('#rad').click(function() {
$('#label').addClass('radio-active');
});
});
.radio-active {
background-color: black;
color: white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="radio-item" id="label">
<input id="rad" type="radio" name="rad" >
<label class="radio-label"for="f-option">£25</label>
</li>
</ul>
धन्यवाद
4 जवाब
जैसा कि अन्य ने उल्लेख किया है, ऐसा लगता है जैसे आप सीएसएस को <style>
टैग में लपेटना भूल गए हैं।
मैंने आपके jQuery को वेनिला जेएस में फिर से लिखा है - चूंकि यह अपेक्षाकृत सरल कार्य है जिसे आप प्राप्त करने का प्रयास कर रहे हैं, वेनिला क्यों नहीं जाते? :-)
document.querySelector("#rad").addEventListener("change", function() {
var label = document.getElementById("label");
label.classList.add("radio-active");
});
.radio-active {
background-color: black;
color: white;
}
<ul>
<li class="radio-item" id="label">
<input id="rad" type="radio" name="rad" >
<label class="radio-label"for="f-option">£25</label>
</li>
</ul>
यह सीएसएस कोड डालें:
.radio-active {
background-color: black;
color: white;
}
style
टैग के साथ जैसे:
<style>
.radio-active {
background-color: black;
color: white;
}
</style>
मुझे लगता है कि आप अपने सीएसएस वर्ग के आसपास <style>
टैग खो रहे थे। क्योंकि आपका कोड काम कर रहा है:
$(document).ready(function() {
$('#rad').click(function() {
$('#label').addClass('radio-active');
});
});
.radio-active {
background-color: black;
color: white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li class="radio-item" id="label">
<input id="rad" type="radio" name="rad" >
<label class="radio-label"for="f-option">£25</label>
</li>
यह यहाँ पूरी तरह से काम करता है ...
क्या आप jQuery को सही तरीके से कॉल कर रहे हैं?
<style>
.radio-active {
background-color: black;
color: white;
}
</style>
<script type="text/javascript">
$(document).ready(function() {
$('#rad').click(function() {
$('#label').addClass('radio-active');
});
});
</script>
<ul>
<li class="radio-item" id="label">
<input id="rad" type="radio" name="rad" >
<label class="radio-label"for="f-option">£25</label>
</li>
<li class="2radio-item" id="label2">
<input id="rad2" type="radio" name="rad2" >
<label class="radio-label2"for="f-option2">£35</label>
</li>
</ul>
संबंधित सवाल
नए सवाल
jquery
jQuery एक जावास्क्रिप्ट लाइब्रेरी है, जावास्क्रिप्ट टैग को जोड़ने पर भी विचार करें। jQuery एक लोकप्रिय क्रॉस-ब्राउज़र जावास्क्रिप्ट लाइब्रेरी है, जो दस्तावेज़ ऑब्जेक्ट मॉडल (DOM) ट्रैवर्सल, इवेंट हैंडलिंग, एनिमेशन और AJAX इंटरैक्शन को ब्राउज़रों की विसंगतियों को कम करके सुविधाजनक बनाता है। JQuery से संबंधित एक प्रश्न jQuery से संबंधित होना चाहिए, इसलिए jQuery को प्रश्न में कोड द्वारा उपयोग किया जाना चाहिए और कम से कम jQuery के उपयोग से संबंधित तत्वों को प्रश्न में होना चाहिए।