Я пытаюсь поставить в качестве первого варианта выбора вариант ни один (чтобы отменить связь этих данных).
Я использую selectize, используя php-страницу, я генерирую select со всеми входными данными следующим образом:
<select class='form-control empleadosEquipamientoSelector' id='empleadoPortatil' required>
<option value='' disabled selected>Seleccione el empleado al que asignar el equipamiento</option>";
echo "<option value='null'>Any</option>";
$sql = "SELECT * FROM employees";
$stmt = sqlsrv_query( $conn, $sql );
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo "<option value='".$row['id']."'> ".$row['name']." ".$row['surname']." ".$row['secondSurname']."</option>";
}
echo "</select>
В jquery у меня есть следующий порядок, но влияет только на вход, который создается в то время как, если я назову это AAAAAAny, первый должен появляться в соответствии с критериями упорядочения, но всегда появляется последний, независимо от значения и текста, который Есть на входе
var $select1 = $('#empleadoPortatil').selectize({
sortField: {
field: 'text',
direction: 'asc'
}
});
Я думаю, что ваша проблема будет решена, если вы позволите SQL сделать всю тяжелую работу. Таким образом, ваши первые два элемента могут быть любыми, а затем сгенерированными параметрами.
Я также хотел бы предложить вам отделить логику от HTML. В этом случае ваш PHP может выполнить всю тяжелую работу, а HTML просто выводит результат. Это будет много лучше для долгосрочного обслуживания, потому что вам не нужно все время переключаться на языки, и вы можете сосредоточить свои (или чьи-то) усилия на одной вещи за раз.
Вот рекомендуемая доработка кода:
<?php
$sql = "SELECT * FROM employees ORDER BY …"; // ORDER BY something
$stmt = sqlsrv_query( $conn, $sql );
$options = array();
$option='<option value="%s">%s %s %s</option>';
while($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$options[]=sprintf($option,$row['id'],$row['name'],$row['surname'],$row['secondSurname']);
}
$options=implode('',$options);
?>
<select class='form-control empleadosEquipamientoSelector' id='empleadoPortatil' required>
<option value='' disabled selected>Seleccione el empleado al que asignar el equipamiento</option>
<option value='null'>Any</option>
<?php print $options; ?>
</select>
Вместо использования «Any» используйте «—Any—», это своего рода хак, а не решение, иначе вы должны отсортировать перед добавлением.