jQuery addClass example

Change class name on click in jQuery

by Dmitri Ganenco

HTML

<select tabindex="" id="relationship_select" class="select" name="prgm_person[0][person_relationship_id]" style="width: 110px;">
   <option value=""></option>
   <option value='0'>Child</option>
   <option value='1'>Spouse</option>
 </select>

 <select tabindex="" id="relationship_select" class="select" name="prgm_person[1][person_relationship_id]" style="width: 110px;">
   <option value=""></option>
   <option value='0'>Child</option>
   <option value='1'>Spouse</option>
 </select>

 <select tabindex="" id="relationship_select" class="select" name="prgm_person[2][person_relationship_id]" style="width: 110px;">
   <option value=""></option>
   <option value='0'>Child</option>
   <option value='1'>Spouse</option>
 </select>

 <select tabindex="" id="relationship_select" class="select" name="prgm_person[3][person_relationship_id]" style="width: 110px;">
   <option value=""></option>
   <option value='0'>Child</option>
   <option value='1'>Spouse</option>
 </select>

CSS

body {
  background: #20262E;
  padding: 20px;
  font-family: Helvetica;
}

#banner-message {
  background: #fff;
  border-radius: 4px;
  padding: 20px;
  font-size: 25px;
  text-align: center;
  transition: all 0.2s;
  margin: 0 auto;
  width: 300px;
}

button {
  background: #0084ff;
  border: none;
  border-radius: 5px;
  padding: 8px 14px;
  font-size: 15px;
  color: #fff;
}

#banner-message.alt {
  background: #0084ff;
  color: #fff;
  margin-top: 40px;
  width: 200px;
}

#banner-message.alt button {
  background: #fff;
  color: #000;
}

JavaScript

$(document).on('change', '.select', function() {
  const selects = $('.select');
  const doesAnyoneIsSpouse = selects.filter(function(key) {
return $(selects[key]).val() === '1';
  }).length > 0;

  $('.select').not(this).find('option[value="1"]').prop('disabled', doesAnyoneIsSpouse);
});