Я использую Ajax для отображения выпадающего списка при выборе группы продуктов. Мой Ajax возвращает список на странице запроса (dropd.php). Однако проблема состоит в том, что массив состоит из некоторого пустого пространства между каждым элементом. Поэтому, когда я инспектировать в хроме ниже является выход я получаю,Как удалить пустую строку из массива. Я не уверен, что погода от PHP или Ajax
<option value="1">Gear pumps</option>
<option></option>
<option value="2">Piston pumps</option>
<option></option>
Как я мог удалить "<option></option>"
из выпадающего списка? Если я беру флажок опции из html, то я получаю;
Шестеренные насосы^поршневые насосы^лопастные насосы ... и т. Д. Если вы заметили пробел (^).
Ajax код
<script>
$(document).ready(function(){
$('#sel1').on('change', function(){
$.post("dropd.php",{vals:$("#sel1 option:selected").text()},
function(data){$.trim($("#sel2").html(data));});
});
});
</script>
dropd.php
<?php
require('../config/connection.php');
if($_POST['vals']){
$values = mysqli_real_escape_string($dbc,$_POST['vals']);
$query = "SELECT * FROM prdct_categories WHERE product = '$values'";
$result = mysqli_query($dbc, $query);
?>
<option value="">Select subgroup</option>
<?php
foreach($result as $row)
{ ?>
<option value="<?php echo $row['id']; ?>"><?php echo $row['subgroup']; ?><option/>
<?php
}
}
mysqli_close($dbc);
?>
Ajax данные здесь идет
<div class="form-group">
<label for="inputsubprdctgrp" class="col-sm-4 control-label" >Product Subgroup</label>
<div class="col-sm-8">
<select class="form-control" id="sel2" >
</select>
</div>
</div>
Спасибо ADVANC е.
<параметр значения = "1"> Насосам шестеренчатых <параметр значению = "2"> Поршневые насосы Является ли эта динамика? ? –
Делает ли '' (в цикле 'foreach') намеренным или должно быть' '? –
^^ Да, в этом проблема. Разметка неверна, и вы добавляете пустой параметр с каждым ''.Chrome пытается исправить недопустимую разметку, закрыв предыдущий '