[英]Set a drop down value based on another drop down value in php
我有一個下拉菜單,當選擇其中的任何選項時,將填充另一個下拉菜單值。
我需要檢查帶有某些變量的第一個下拉值,並根據該條件根據該條件填充其他下拉值。
我的第一個下拉菜單
<select id="mySelect" name="name">
<option>Select any city</option>
<?php foreach ($data as $c) { ?>
<option><?php echo ($c[0]['value']); ?></option>
<?php } ?>
</select>
我正在使用jQuery獲取上述下拉選擇的值,但我需要在PHP中
jQuery("#mySelect").change(function () {
...
});
對於第二個下拉菜單,
<select>
......
if ($myPhpVar == $data[1][$j][$i]['c_name']){ ?>
<option><?php echo $data[1][$j][$i]['a_name']; ?></option>
<?php }
.... ?>
</select>
這里$myPhpVar
應該是第一個下拉選擇值,我需要將它與一些數據進行比較。
如何獲取第一個下拉值並將其設置為$myPhpVar
更新:
使用jQuery托管下拉列表:
jQuery("#mySelect").change(function () {
var end = this.value;
var firstDropVal = jQuery('#mySelect').val();
<?php for($j=0; $j<count($data[1]); $j++ ){
//print_r ($data[1][$j]);
for($i=0; $i<count($data[1][$j]);$i++){
if ($myPhpVar == $data[1][$j][$i]['city_name']){
echo $data[1][$j][$i]['area_name']; ?>
jQuery('#dsad').append("<option><?php echo json_encode($data[1][$j][$i]['area_name']); ?></option> ")
<?php
}
}
} ?>
console.log(end);
console.log(firstDropVal);
});
尚未獲得第二個下拉菜單的下拉菜單值。
您必須編寫一個Web服務 。 創建一個新頁面,當第一個下拉列表發生更改時將被調用 (使用AJAX)。 將選定的值傳遞給該頁面,以JSON發送響應(可能是)。 將該響應設置為其他組件。
jQuery("#mySelect").change(function () {
var val = jQuery(this).val();
jQuery.ajax({
url: 'your_new_page.php',
data: 'dropvalue='+val,
processData: false,
type: 'GET',
dataType:'json',
success: function(response){
//load json data from server use it
},
error: function(jqXHR, textStatus, errorThrown) {
//there is an error
}
});
});
your_new_page.php
if(isset($_GET['dropvalue'])) {
$myPhpVar = $_GET['dropvalue'];
//do what you want and return the response
} else {
//value not submitted, send an error
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.