问题描述
页面重定向时,我在框中选择的语言没有 出现。首先,选择任何可用的。
这是我想要做的:更改选项数据
<select id='lang' class='btn btn-xs btn-primary icons-select2'>
<?PHP
$query_lang=MysqLi_query($con,"SELECT * FROM tb_lang");
while($lang = MysqLi_fetch_assoc($query_lang)){
if ($lang['durum']==1)}
?>
<option value = "<?PHP echo $lang['lang_fix']; ?>" data-min="_<?PHP echo $lang['lang_fix']; ?>"
data-icon="<?PHP echo $lang['lang_flag']; ?>">
<?PHP
echo strtoupper($lang['lang_fix']);
?>
</option>
<?PHP }} ?>
</select>
<script>
$(document).ready(function () {
$('body').on('change','#lang',function() {
var lang_id= $(this).val();
window.location.replace("index.PHP?lang="+lang_id);
});
});
</script>
解决方法
首先检索通过 GET 发送的 lang
$lang_id = $_GET['lang'];
然后根据您循环的数据进行检查
<option value = "<?php echo $lang['lang_fix']; ?>" data-min="_<?php echo $lang['lang_fix']; ?>" data-icon="<?php echo $lang['lang_flag']; ?>" <?php if ($lang_id == $lang['lang_fix']) echo "selected"; ?>>
使您的代码如下所示,以便您要选择的选项具有必要的 selected
属性。
$lang_id = $_GET['lang'];
<select id='lang' class='btn btn-xs btn-primary icons-select2'>
<?php
$query_lang=mysqli_query($con,"SELECT * FROM tb_lang");
while($lang = mysqli_fetch_assoc($query_lang)){
if ($lang['durum']==1)}
?>
<option value = "<?php echo $lang['lang_fix']; ?>" data-min="_<?php echo $lang['lang_fix']; ?>" data-icon="<?php echo $lang['lang_flag']; ?>" <?php if ($lang_id == $lang['lang_fix']) echo "selected"; ?>>
<?php
echo strtoupper($lang['lang_fix']);
?>
</option>
<?php }} ?>
</select>
<script>
$(document).ready(function () {
$('body').on('change','#lang',function() {
var lang_id= $(this).val();
window.location.replace("index.php?lang="+lang_id);
});
});
</script>