2017-05-30 125 views
0

我已经在PHP中创建了许多选择框,并且我希望在刷新页面后将选定项目保持为选定状态。 (当选择相同的选择框或其他)这里是我的代码。如何在PHP中刷新页面后在选择框中保留选定的项目

$selectbox='<select class="form-control" name="estate_id" onchange="this.form.submit()" style="width: 200px" >'; 

$est_name = $client ->call('get_estate'); // call method from web services 
$_SESSION['estname'] = array(); 
$_SESSION['estname'] = $est_name; 
$count = count($_SESSION['estname']); 

$i = 0; 
foreach ($_SESSION['estname'] as $row) 
{ 
    $id = $_SESSION['estname'][$i]['est_id']; 
    $name = $_SESSION['estname'][$i]['est_name']; 
    if($id == isset($_POST['estate_id'])) 
    { 
     $isSelected = ' selected="selected"'; 
    } 
    else { 
     $isSelected = ''; 
    } 
    $selectbox.= "<option value=".$id.$isSelected.">".$name."</option>"; 
     $i++; 
} 
$selectbox.='</select>'; 
echo $selectbox; 
+0

的[保持值表单提交后选择(https://stackoverflow.com/questions/2246227/keep-values-selected-after-form-submission)可能的复制 –

+0

你可能会需要本地存储或其他东西。刷新不会将数据(表单数据)发送到服务器 – Jelmergu

+0

请您将'$ isSelected'变量置于选项值之外吗?并检查它。 – purvik7373

回答

0
<select name="name"> 
    <option <?php if ($_GET['name'] == 'a') { ?>selected="true" <?php }; ?>value="a">a</option> 
    <option <?php if ($_GET['name'] == 'b') { ?>selected="true" <?php }; ?>value="b">b</option> 
</select> 
+0

我想从数据库中使用数组填充选择框.. –

+0

我解决了我的问题,以相同的方式我做了些小改变。感谢大家 –

相关问题