在选定的编码点火器上预设货币值


Preset currency value on select codeigniter

我有一个带有货币 1 和 2 的选择框,货币 1 代表欧元。我希望我的选择框预设值 1,即欧元。

我正在使用控制器来获取这样的货币信息。

$data =  array(
            'sexList' => $this->localization->getTextParamValues(null, 'user', 'Sex'),
            'countryList' => $this->localization->getCountryList(),
            'currencyList' => $this->localization->getCurrencyList(),
            'languageList' => $this->localization->getLanguageList(),
            'user' => $userExist,
            'userinfo' => $this->user_profile->getUserInfo(),
            'Currency' => $this->localization->getCompanyCurrency()
        );
        $this->load->view('header', $this->history->getPreviousPageInArray());
        $this->load->view('borrow_registerpage_view',$data);

货币将值 1 推送到数据数组,但在 html 文件中它不会自动预设。不知道出了什么问题。

这是 HTML 代码,我需要在此表中预设值 1,以便它通常选择 1,即 EURO。

<?php   
  echo '<select name="currency_select" id="my_profile_select_currency" class="form-control country_style">';    
    if(!($user['Currency'] > 0)){
       echo '<option value="0">'.lang("myprofile_pinfo_no_currency_set").'</option>';
          foreach ($currencyList as $currency){
             echo '<option value="' . $currency->ID. '">' . $currency->Name . '</option>';
               }
          }else{
                              foreach ($currencyList as $currency){
                                  echo '<option value="' . $currency->ID. '"';
                                  if($currency->ID==$user['Currency']){
                                      echo 'selected';
                                  }
                                  echo '>' . $currency->Name .'';       
                              echo  '</option>';            
                              }
                      }         
                      echo '</select>'  
                      ?>

你需要改变你的视图

$opt = array();
foreach ($currencyList as $currency){
       $opt[$currency->ID] = $currency->Name;
}
echo form_dropdown('currency_select', $opt, set_value('currency_select', $user['Currency'], 'id="my_profile_select_currency" class="form-control country_style"');

试试这个。仅当$user['Currency']大于 0 时,它才会显示EURO选中

   <?php   
    echo '<select name="currency_select" id="my_profile_select_currency" class="form-control country_style">';    
    if(!($user['Currency'] > 0)){
       echo '<option value="0">'.lang("myprofile_pinfo_no_currency_set").'</option>';
          foreach ($currencyList as $currency){
                    echo '<option value="' . $currency->ID. '">' . $currency->Name . '</option>';
               }
          }else{
            foreach ($currencyList as $currency){
                    echo '<option value="' . $currency->ID. '"  '.$currency->Name == 'EURO' ? 'selected="yes"' : ''.'>' .$currency->Name. '</option>';
                  }
              }         
        echo '</select>'  
    ?>

如果需要这两种情况,您可以在两种情况下都使用$currency->Name == 'EURO' ? 'selected="yes"' : '' foreach