2016-03-02 87 views
1

在用户编辑模块有一个下拉列表,其中我显示数据库中的选项。被选为所选数据库值Codeigniter

现在我从下拉列表中选择一个值,并将其设置为选中状态。 SO下次当我编辑用户,我可以看到哪个是最后选择的值。

当我编辑用户我从下拉列表中选择一些值,然后将记录保存回数据库。下一次当我打开那条记录时,我希望我上次选择的选项被选中。

我尝试这样做:

<tr> 
    <td>Base INI File</td> 
     <?php 

    if(isset($_GET['id'])) 
    { 
    $id=$_GET['id']; 
    btn_edit_file($id); 
    } 
    ?> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 


    <td> 
     <select required name="base_ini_id" id="base_ini_id" class="form-control"> 

     <option value="">Select</option> 
     <?php foreach($base as $value) { ?> 
     <option id="emp" class="specialLink" value="<?php echo $value->id;?>"><?php echo $value->base_ini_filename; 
      if($value->id == $value->base_ini_filename){echo "selected='selected'";} ?> </option> 
     <?php } ?> 
     </select> 
    </td> 


    <td> 

    <?php echo btn_edit('customer/upload_ini/edit_ini_custom/'); ?> 
    </td> 


    <script type="text/javascript"> 
      $(document).ready(function() { 
       $('#base_ini_id').change(function() { 
        var id = $("#base_ini_id").val(); 
        var url = "/bizrtc/customer/upload_ini/edit_ini_custom/"; 

        $("#edit_link").attr("href",url+ id); 
        $("#edit_link").attr("target","_blank"); 

       }); 
      }); 
     </script> 
    </tr> 
+1

这不会工作,因为你不是在做与三元运算符什么。没有回声或任何东西,三元运算符应该在<选项! - 三元运算符在这里 - !> – Jordy

+0

是啊,它不工作,但如何使它工作@Jordy – Rajan

+0

你能解释你的问题多一点? – Dray

回答

1

做到这一点:

<select required name="base_ini_id" id="base_ini_id" class="form-control"> 

    <option value="">Select</option> 
    <?php foreach($base as $value) 
    { 
     ?> 

    <option id="emp" class="specialLink" value="<?php echo $value->id;?>" 
     <?php if($value->id == $user->base_ini_id){echo "selected";} ?>> 
     <?php echo $value->base_ini_filename;?></option> 

    <?php } ?> 

    </select> 
+0

我这样做了但没有工作请检查我的代码我正在更新 – Rajan

+0

'$ value - > id'和'$ value-> base_ini_filename'?那么我肯定问题在那里。 – Dray

+0

$ value-> id将是该记录的id和$ value-> base_ini_filename它是选择的选项 – Rajan

-1

用户在哪里保存的价值?

首先你应该得到的用户保存的值到一个变量

你选择标签应该如下

<option id="emp" class="specialLink" value="<?php echo $value->id;?>"> 
    <?php 
    if($value->id == $usersavedvalue){echo "selected='selected'";} ?> ><?php echo $value->base_ini_filename; ?> </option> 
+0

属性必须在打开选项标签 – msvairam

+0

内正确,以及它错过了已保存的数据。 Subash

1

试试下面的代码:

<select required name="base_ini_id" id="base_ini_id" class="form-control"> 
    <option value="">Select</option> 
    <?php foreach($base as $value) { ?> 
      <option id="emp" class="specialLink" value="<?php echo $value->id;?>" <?php if($value->id == $value->base_ini_filename){echo "selected='selected'";} ?> > 
       <?php echo $value->base_ini_filename; ?> 
      </option> 
    <?php } ?> 
</select> 
由不正确的结束标记

除了在HTML中,我还想指出,你可能想仔细检查你的情况:

if($value->id == $value->base_ini_filename) 

好像你是比较非常不同的事情

+0

我试过但对我来说没有工作:( – Rajan

+0

我认为失败的,因为你的病情仔细检查,如果($值 - > ID = = $值 - > base_ini_filename) – Ceeee

+0

是你。正确的,我应该比较它是这样的:<?php if($ value-> id == $ user-> base_ini_id){echo“selected”;}?> – Rajan

相关问题