Я использую Select2 для моего варианта выпадающего списка. Я заполняю его в виде таблицы с данными MySQL, и форма находится внутри загрузочного модуля Modal вместе с кнопкой для редактирования или удаления.Select2 - неверное выбранное значение с данными mysql
<div class="btn-group">
<a class="btn btn-primary" href="#"><i class="fa fa-home"></i> Area</a>
<a class="btn btn-primary dropdown-toggle" data-toggle="dropdown" href="#">
<span class="fa fa-caret-down"></span></a>
<ul class="dropdown-menu">
<?php
echo "<li><a class=\"open-EditRow\" data-areano=\"".$areano."\" data-area=\"".$area."\" data-centerno=\"".$centerno."\" title=\"Edit this row\" \"><i class=\"fa fa-pencil\"></i> Edit</a></li>";
echo "<li><a class=\"open-DeleteRow\" data-areano=\"".$areano."\" data-area=\"".$area."\" data-centerno=\"".$centerno."\" title=\"Delete this row\" \"><i class=\"fa fa-trash\"></i> Delete</a></li>";
?>
</ul>
</div>
Затем кнопка «Редактировать» откроет Modal для редактирования деталей.
<div class="form-group">
<label class="col-sm-3 control-label">Center</label>
<div class="col-sm-5">
<?php
$e = mysql_query("select * from center") or die(mysql_error());
?>
<select class="populate placeholder" name="center" id="center">
<option value="">-- Select a center --</option>
<?php
while($f=mysql_fetch_array($e))
{
?>
<option value="<?php echo $f['center_no']; ?>" <?php if ($f['center_no']==$centerno) { ?>selected<?php } ?>><?php echo $f['center']; ?></option>
<?php
}
?>
</select>
</div>
</div>
Это, как я передать данные в Modal:
$('.open-EditRow').click(function(){
var areano = $(this).attr('data-areano');
var area = $(this).attr('data-area');
var centerno = $(this).attr('data-centerno');
$('#myModal #areano').val(areano);
$('#myModal #area').val(area);
$('#myModal #center').val(centerno);
$('#myModal').modal('show');
});
И код Выбор2:
function DemoSelect2(){
$('#center').select2();
}
Но Выбор2 отображает неверную выбранное значение. Он отображает первый элемент, сгенерированный запросом, вместо выбранного значения.
Но при нажатии на раскрывающийся список Select2, выбранный элемент будет выделен правильно.
То, что кажется проблема здесь? Любые указания будут оценены.
Можете ли вы расширить свой вопрос, чтобы также включить фрагмент HTML-кода, который генерируется? Проблема может быть в HTML, но также может случиться так, что вы не вызываете событие «change» после вызова функции val(). –