मेरे पास 4 चेकबॉक्स हैं, मैं पहले दो के लिए अलग-अलग अलर्ट दिखाना चाहता हूं जब उनका चयन किया जाता है लेकिन आउटपुट नहीं मिल रहा है। कृपया मुझे बताएं कि यह कहां गलत हुआ।

let ReviewCheckBox = checkform.ratings;
if (ReviewCheckBox[0].checked == true) {
  alert("1 Selected");
} else if (ReviewCheckBox[0].checked == true && ReviewCheckBox[1].checked == true) {
  alert("Both Selected");
}
<div>
  <span>CUSTOMER REVIEWS</span><br>
  <form name="checkform" onclick="productFilter()">
    <input type="checkbox" name="ratings" id="rating-checka">
    <label for="rating-checka">4 * & Above</label><br>

    <input type="checkbox" name="ratings" id="rating-checkb">
    <label for="rating-checkb">3 * & Above</label><br>

    <input type="checkbox" name="ratings" id="rating-checkc">
    <label for="rating-checkc">2 * & Above</label><br>

    <input type="checkbox" name="ratings" id="rating-checkd">
    <label for="rating-checkd">1 * & Above</label>
  </form>
</div>
0
Gopichand 27 नवम्बर 2021, 12:50

1 उत्तर

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

1) आपको चेक किए गए प्रत्येक चेकबॉक्स पर सत्यापन करना होगा ताकि इसके लिए आप एक फ़ंक्शन productFilter बना सकें और यह हर बार आपके द्वारा चेक किए जाने पर चलेगा

2) आपको only 0 से पहले 0 और 1 इंडेक्स चेकबॉक्स को चेक करना होगा।

function productFilter() {
  let ReviewCheckBox = checkform.ratings;
  if (ReviewCheckBox[0].checked == true && ReviewCheckBox[1].checked == true) {
    alert("Both Selected");
  } else
  if (ReviewCheckBox[0].checked == true) {
    alert("1 Selected");
  }
}
<div>
  <span>CUSTOMER REVIEWS</span><br>
  <form name="checkform" onclick="productFilter()">
    <input type="checkbox" name="ratings" id="rating-checka">
    <label for="rating-checka">4 * & Above</label><br>

    <input type="checkbox" name="ratings" id="rating-checkb">
    <label for="rating-checkb">3 * & Above</label><br>

    <input type="checkbox" name="ratings" id="rating-checkc">
    <label for="rating-checkc">2 * & Above</label><br>

    <input type="checkbox" name="ratings" id="rating-checkd">
    <label for="rating-checkd">1 * & Above</label>
  </form>
</div>
1
decpk 27 नवम्बर 2021, 12:59
धन्यवाद। यह तब भी काम करता था जब मैंने अपने कोड से 'और' हटा दिया।
 – 
Gopichand
27 नवम्बर 2021, 13:09