Hola, tengo el siguiente código para agregar cuadros combinados cuando se hace clic en el botón.
Quiero verificar si el valor está seleccionado en cualquier cuadro combinado anterior si está seleccionado, entonces alerta "el valor ya está seleccionado".
Por ejemplo, tengo 5 cuadros combinados adjuntos y el valor en cada cuadro combinado debe ser diferente entre sí al atravesar cada valor en los cuadros combinados:
<div class="custom-control custom-checkbox"> <input type="checkbox" class="itemRow custom-control-input" id="itemRow_1"> <label class="custom-control-label" for="itemRow_1"></label> </div> <div class="form-group has-success"> <select name="proid[]" class="form-control" id="proid_1" required="required"> </select> </div> <div class="form-group has-success"> <button type="button" name="addbtn" id="addbtn" class="btn btn-success">Add Product</button> </div>CÓDIGO JQUERY
var count = $(".itemRow").length; $(document).on('click', '#addbtn', function() { count++; var productcombo=''; productcombo += '<tr>'; productcombo +='<td><input type="checkbox" class="custom-control-input itemRow" id="itemRow_'+count+'"> <label class="custom-control-label" for="itemRow_'+count+'"></label> </td>'; productcombo +='<td><select name="proid[]" class="form-control" id="proid_'+count+'" required="required"> </select></td>'; productcombo += '</tr>'; $('#products').append(productcombo); }); $("#proid_"+count).change(function() { var id = $(this).find(":selected").val(); // code here to compare each value if(value found in previous comboboxes) { alert("Already Selected"); } });Puede establecer una variable de matriz y cuando el usuario seleccione un valor del cuadro combinado, inserte el valor en él.
var selectedVals = []; $("#proid_"+count).change(function() { var id = $(this).find(":selected").val(); // code here to compare each value if(selectedVals.includes(id)) { alert("Already Selected"); } else { selectedVals.push(id); } });