У меня есть выпадающий список, который заполняется базой данных MySQL, используя следующий код
<?php
$conn = new mysqli('localhost', 'root', '@', '')
or die ('Cannot connect to db');
$result = $conn->query("select name, surname FROM clients");
echo "<html>";
echo "<body>";
echo "<select name='client_name' id='client'>";
while ($row = $result->fetch_assoc()) {
unset($msisdn, $contract_type, $provider);
$name = $row['name'];
$surname = $row['surname'];
echo '<option value="'.$name.'_'.$surname.'">'.$name.' '.$surname.'</option>';
}
echo "</select>";
echo "</body>";
echo "</html>";
?>
Я хочу заполнить различные поля информацией, связанной с результатом, в выпадающем списке.
<input type="text" name="address">
<input type="text" name="tel">
<input type="text" name="id_nr">
$('#client').change(function() {
selectedOption = $('option:selected', this);
$('input[name=address]').val( selectedOption.data('address') );
$('input[name=tel]').val( selectedOption.data('tel') );
$('input[name=id_nr]').val( selectedOption.data('id_nr') );
});
Вы должны установить данные для параметра как
echo '<option data-address-"'.$address.'" value="'.$name.'_'.$surname.'">'.$name.' '.$surname.'</option>';
Кроме того, обновите свой запрос, чтобы получить адрес вместе с именем и фамилией.