मेरे पास एक फॉर्म में दो चयन हैं। वे भाई-बहन नहीं हैं। उन दोनों के पास 15 विकल्प हैं जिनमें 1-15 मान हैं। और मुझे जो प्राप्त करने की आवश्यकता है वह यह है कि जब A चुनें से एक विकल्प का चयन किया जाता है जिसका मान 5 है। तब B चुनें के विकल्प, जिनका मान 5 से बड़ा है अक्षम होना।

यह मेरा कोड है:

<select name="" id="children">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
<select name="" id="child_going_school">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>

अतः यदि व्यक्ति 5 बच्चों का चयन करता है, तो स्कूल जाने वाले बच्चों की संख्या 5 से अधिक नहीं होनी चाहिए।

-2
Nomi Rajput 3 पद 2019, 08:44
2
आपने अब तक क्या किया है?
 – 
Eddie
3 पद 2019, 08:46
मैंने सेलेक्ट 2 से वही महत्वपूर्ण विकल्प अक्षम कर दिया है। लेकिन उन सभी को चयनित मूल्य से अधिक नहीं मिल सकता है।
 – 
Nomi Rajput
3 पद 2019, 08:48
अपना कोड पोस्ट करें :)
 – 
Eddie
3 पद 2019, 08:49
$('#children').change(function() { var value = $(this).val(); $('#child_going_school').children('option').each(function() { if ( $(this).val() === value ) { $(this).attr('disabled', true).siblings().removeAttr('disabled'); } }); });
 – 
Nomi Rajput
3 पद 2019, 08:51

5 जवाब

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

आप निम्न कोड का प्रयास कर सकते हैं

jQuery( document ).ready(function($){
    $('#child_going_school').change(function() {

        var val1 = parseInt($('#children').val());
        var val2 = parseInt($(this).val());

        console.log(val1)
        console.log(val2)

        if(val1 != ''){
            if(val2 > val1){
                $(this).val(val1);
            }
        }

    });
});

Dalam hal ini jika nilai dropdown kedua lebih besar dari yang pertama maka tetapkan nilainya sebagai nilai dropdown pertama. Saya harap ini membantu Anda

1
Ajith 3 पद 2019, 08:52
आपके कमेंट के लिए धन्यवाद। इससे बहुत मदद मिली।
 – 
Nomi Rajput
3 पद 2019, 08:55

Anda dapat mengulangi melalui opsi child_going_school, memicu acara perubahan setelah dimuat dan memeriksa dengan nilai children pilih:

$('#children').on('change', function() {
  var value= this.value;
  $('#child_going_school option').each(function(_, el) {
    $(el).prop('disabled', parseInt(value) < parseInt(el.value));
  });
});

$('#children').trigger('change');
$('#children').on('change', function() {
  var value = this.value;
  $('#child_going_school option').each(function() {
    $(this).prop('disabled', parseInt(value) < parseInt(this.value));
  });
});

$('#children').trigger('change');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="" id="children">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
<select name="" id="child_going_school">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
0
shrys 3 पद 2019, 09:04

Anda dapat menggunakan filter() untuk mendapatkan opsi dengan nilai yang lebih tinggi seperti:

$("#children").change(function() {
  var val = +$(this).val();

  $("#child_going_school option").removeAttr('disabled').filter(function(){
    return +this.value > val;
  }).attr('disabled','disabled')
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="" id="children">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
<select name="" id="child_going_school">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>

Opsi lain adalah menggunakan hide dan show alih-alih menonaktifkan opsi.

$("#children").change(function() {
  var val = +$(this).val();
  $("#child_going_school option").show().filter(function() {
    return +this.value > val;
  }).hide();
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="" id="children">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
<select name="" id="child_going_school">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
0
Eddie 3 पद 2019, 08:54
मदद करने के लिए खुश :)
 – 
Eddie
3 पद 2019, 09:01

Pertama dapatkan nilai drop down pertama lalu bandingkan dan nonaktifkan seperti di bawah ini.

$(document).on('change', '#children', function(){
  var fval = $(this).val();
  
  $("#child_going_school option").each(function() {
    var $thisOption = $(this);

    if( $thisOption.val() > parseInt(fval)) {
        $thisOption.attr("disabled", "disabled");
    }
});
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select name="" id="children">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
<select name="" id="child_going_school">
  <option value="1">1</option>
  <option value="2">2</option>
  <option value="3">3</option>
  <option value="4">4</option>
  <option value="5">5</option>
  <option value="6">6</option>
  <option value="7">7</option>
  <option value="8">8</option>
  <option value="9">9</option>
  <option value="10">10</option>
  <option value="11">11</option>
  <option value="12">12</option>
  <option value="13">13</option>
  <option value="14">14</option>
  <option value="15">15</option>
</select>
0
Devsi Odedra 3 पद 2019, 08:54
<script>
$(document).ready(function(){
  $('#children').change(function(event){
   $('#child_going_school').children().each(function(_, el) {
    $(el).prop('disabled', Number($(el).val()) > event.target.value);
  });
  });
});
</script>
0
chitti 3 पद 2019, 10:11
1
एसओ में आपका स्वागत है! कृपया अपने उत्तर में कुछ स्पष्टीकरण जोड़ें।
 – 
Sampada
3 पद 2019, 13:58
इस पहली ड्रॉपडाउन परिवर्तन विधि में हम दूसरे ड्रॉपडाउन विकल्प मानों के साथ चयनित विकल्प की जांच कर सकते हैं। यदि दूसरा ड्रॉपडाउन विकल्प मान चयनित मान से अधिक है तो उस विकल्प को अक्षम कर दिया जाना चाहिए अन्यथा इसे ईवेंट और प्रत्येक विधि का उपयोग करके सक्षम किया जाना चाहिए। ईवेंट का उपयोग करके हम पहले ड्रॉपडाउन का चयनित मान प्राप्त कर सकते हैं और यहां दूसरा ड्रॉपडाउन विकल्प प्राप्त करने के लिए बच्चों () विधि का उपयोग किया जाता है।
 – 
chitti
4 पद 2019, 04:57