我刚刚写了一个城市名称的datalist代码,它将从给定的州ID中找到城市。但是在选择城市名称时,它也显示状态ID,在选择之后它只显示状态ID而不是显示城市名称。 这是代码。
<?php
echo '<input type="text" list="city" class="form-control" />
<datalist id="city" >';
$con = mysql_connect("localhost","root","");
$db = mysql_select_db("placedb",$con);
$query = mysql_query("SELECT * FROM `cities` WHERE state_id BETWEEN 1 AND 41 ORDER BY name ASC ") or die(mysql_error());
$items = array();
while ($row = mysql_fetch_array($query)) {
$items[] = $row;
}
foreach($items as $item){
printf('<option id="city" value="%s">%s</option>', $item['id'], $item['name']);
}
echo '</datalist>';
?>
答案 0 :(得分:0)
您必须使用$item['name']
代替$item['id']
答案 1 :(得分:0)
我认为printf应该是
printf('<option id="city" value="%d">%s</option>', $item['id'], $item['name']);