estoy usando slim-select [plugin]: https://www.cssscript.com/multi-select-dropdown-component-javascript-slim-select/ en mi formulario personalizado en la plantilla de wordpress php.
El código de opción de formulario es donde los datos provienen del archivo json:
<select id="ddl5" name="per" class="dropd per gry">
<option value="">Per</option>
<?php
$_SERVER['HTTPS'] = false;
$output_s = file_get_contents('https://www.mywebsite.com/fee.json');
$array_s = json_decode($output_s, true);
$count = count( $array_s );
for ( $i = 0; $i < $count; $i++ )
{
echo "<option value="".$array_s[$i]["id']."'>".$array_s[$i]['uom_name']."</option>";
}?> </select>
Selección múltiple js:
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/slim-select/1.26.0/slimselect.min.css"></link>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/slim-select/1.26.0/slimselect.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
$(".ss-multi-selected").click(function(e){
$(this).closest('.multiDDL').css("max-height", "inherit");
});
});
const my_MSD_object = new SlimSelect({
select: '#ddl1-o',
closeOnSelect: false,
});
var my_MSD_object2 = new SlimSelect({
select: '#ddl1-bo',
closeOnSelect: false,
});
</script>
Ahora, la selección múltiple funciona bien, pero aquí crea opciones de selección en div y tiene valores aleatorios donde necesito valores del archivo json para poder comparar con otra opción de selección para deshabilitar la opción
El complemento de selección múltiple crea esto cuando se usa:
<div class="ss-list">
<div class="ss-option" data-id="45063549">Other Services</div>
<div class="ss-option ss-disabled ss-option-selected" data-id="74143280">Director</div>
<div class="ss-option" data-id="94288375">Cinematographer</div>
</div>
Y el valor de selección predeterminado que proviene de php simple está oculto por el complemento en la parte delantera:
<select id="ddl1-o" class="service gry" name="service" multiple="" tabindex="-1" data-ssid="ss-89838" style="display: none;">
<option value="">Other Services</option>
<option value="e7f18df3-3a9e-486f-ac8e-a8bf1d63dd51" id="service0">Director</option>.
<option value="02fbf950-30bc-44fc-adb2-696dde388cf3" id="service1">Cinematographer</option>
Necesito estos valores anteriores, por ejemplo: 02fbf950-30bc-44fc-adb2-696dde388cf3 en mis opciones de selección múltiple como identificación de datos o identificación simple que Jquery está creando y quiero obtener esos valores, para que pueda compararlos con otra opción de selección que tiene los mismos valores provenientes del archivo json.
Como uno es servicios primarios y otro Otro servicio, por lo tanto, si una opción seleccionada en 1select debe deshabilitarse en 2select.
Por favor, hágame saber cómo puedo escribir el JS/Query para hacerlo, ya que lo encuentro complicado.
.