[英]how to change a selections options based on another select option selected by vue js
[英]PHP: How to change the values of a Select based on selections of another Select
我有一個選擇國家(地區)和一個選擇城市(城市),我想根據選擇國家(地區)的選擇在城市選擇中顯示不同的值。
類似於:值= country.selection
從城市中選擇城市國家/地區=價值
$ myrow [城市]
請參閱下面的代碼(這會將值帶入數據庫的Selects中並進行填充。
可能存在一種更好的方式來編寫我所編寫的代碼,我也非常感謝任何建議使其變得更容易,更有效。
另外,如果用Javascrip或jQuery更好或更容易地做到這一點,我也將接受該方向的建議。
非常感謝
<html>
<body>
<select name="taskOption" id="drop_drop">
<?php
$db = pg_connect('host=localhost dbname=test user=myuser password=mypass');
$query = "SELECT country FROM countries";
$result = pg_query($query);
if (!$result) {
echo "Problem with query " . $query . "<br/>";
echo pg_last_error();
exit();
}
printf ("<option value=Select>Select a Country</option>");
while($myrow = pg_fetch_assoc($result)) {
printf ("<option value=$myrow[country]>$myrow[country]</option>");
}
?>
</select>
<select name="taskOption" id="drop_drop">
<?php
$db = pg_connect('host=localhost dbname=test user=myuser password=mypass');
$query = "SELECT city FROM cities";
$result = pg_query($query);
if (!$result) {
echo "Problem with query " . $query . "<br/>";
echo pg_last_error();
exit();
}
printf ("<option value=Select>Select a City</option>");
while($myrow = pg_fetch_assoc($result)) {
printf ("<option value=$myrow[city]>$myrow[city]</option>");
}
?>
</select>
</body>
</html>
您必須在國家/地區更改時提出請求,將國家/地區的值傳遞給服務器以查找其城市。
<!-- Note id change here -->
<select name="taskOption" id="countries">
<?php
$db = pg_connect('host=localhost dbname=test user=myuser password=mypass');
$query = "SELECT country FROM countries";
$result = pg_query($query);
if (!$result) {
echo "Problem with query " . $query . "<br/>";
echo pg_last_error();
exit();
}
printf ("<option value=Select>Select a Country</option>");
while($myrow = pg_fetch_assoc($result)) {
printf ("<option value=$myrow[country]>$myrow[country]</option>");
}
?>
</select>
<select name="taskOption" id="cities">
<?php
$db = pg_connect('host=localhost dbname=test user=myuser password=mypass');
// Note query change here.
$selectedCountry = $_GET['country'];
$query = "SELECT city FROM cities where country_id = " + $selectedCountry;
$result = pg_query($query);
if (!$result) {
echo "Problem with query " . $query . "<br/>";
echo pg_last_error();
exit();
}
printf ("<option value=Select>Select a City</option>");
while($myrow = pg_fetch_assoc($result)) {
printf ("<option value=$myrow[city]>$myrow[city]</option>");
}
?>
</select>
<script type='text/javascript'>
// Note this new script.
$(document).ready(function(){
$('#countries').on('change', function(){
window.location += '?country=' + $(this).val();
});
});
</script>
請注意select
的元素中的id
屬性,並注意可能的SQL注入。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.