[英]Adding values (by user) to drop down list populated from db
我正在嘗試創建一個“可編輯”的下拉列表。 我有一個從數據庫中的“ city”表填充的下拉列表,它的工作原理很完美,但是現在我希望用戶能夠向列表中添加一個新值(如果該值不存在)(並且我想保存該值)值,因此下次出現在下拉列表中)。 有任何想法嗎? 謝謝
<select name="city">
<?php
// connecting to DB
$con= mysqli_connect('localhost','root','1234','e-sage');
// enable hebrew input
mysqli_set_charset($con,'utf8');
// read the city table from DB
$sql = mysqli_query($con,"SELECT CityName FROM city");
while ($row = mysqli_fetch_array($sql)){
// creating temporary variable for each row
$city1=$row["CityName"];
//assigning a value to each option in dropdown list
echo "<option value=\"$city1\"> $city1 </option>";
}
?>
</select>
您可以在下拉菜單中提供“其他”選擇。 如果用戶選擇,則顯示一個新文本框,您可以從中插入數據庫。
使用數據列表標簽
然后嘗試以下操作:讓我們同意您已經將所有城市都排列好了嗎?
<select name="city">
<?PHP
foreach($cities as $city)
{
echo '<option value="'.$city.'">'.$city.'</option>';
}
?>
</select>
<form method="post">
<label for="new_city">New city</label>
<input id="new_city" name="new_city" placeholder="Enter new city name" />
<input type="button" id="addCity" value="Insert city" />
</form>
<script>
$(document).on('click','#addCity',function()
{
var new_city=$("#new_city").val();
var e=0;
$("[name='city'] option").each(function(i,item)
{
var check_city=$(item).val();
if(check_city==new_city)
{
e++;
}
else
{
}
});
if(e>0)
{
alert('The same');
}
else
{
/*Submit the form*/
alert('This city is fresh and new');
}
});
</script>
因此,腳本將檢查該值是否已分配給option。 如果不是,則允許提交表格。
請檢查以下一項: http : //jsfiddle.net/n47N2/1/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.