2014-04-03 29 views
0

此代碼適用於添加此下拉類別的新條目。我的問題是,這會將Option1設置爲默認值,以確保下拉菜單不會被解除。我的問題是,如何回覆以前保存的下拉類別的值?我應該正確顯示它,以便我可以正確編輯功能。如何在codeigniter中回顯先前選擇的下拉值?

<tr> 
    <span style="font-size: 10pt" class="label label-info">Category</span><br/> 
<? $options = array 
    (
     '1' => 'Option1', 
     '2' => 'Option2', 
     '3' => 'Option3', 
     '4' => 'Option4', 
    ); ?> 
    <?php echo form_dropdown('category_id', $options, 'Option1');?> 
</tr> 

我期待着任何幫助。

祝您有美好的一天! :)

回答

0

編輯:這工作(順便說一下,有很好的類來處理Codeigniter的形式,那裏你不必使用所有這些代碼的每個領域,並管理驗證規則等等更靈活的方式 - 保持視圖和控制器非常簡單,並將其大部分轉換爲模型)。

<?php $model = array(
    array('value' => '1', 'display' => 'Option1'), 
    array('value' => '2', 'display' => 'Option2'), 
    array('value' => '3', 'display' => 'Option3')); 
echo '<select name="category_id">'; 
foreach($model as $i) echo '<option '.($this->input->post('category_id') === $i['value'] ? 'selected="selected"' : '').' value="'.$i['value'].'">'.$i['display'].'</option>'; 
echo '</select>'; 
?> 
+0

嗨@Davor。感謝您的答覆。我試圖寫這個:<?php echo form_dropdown('category_id',$ options,$ _POST ['category_id']);?>但是我得到一個錯誤,說category_id是一個未定義的索引.. – user3453256

+0

是因爲$ _POST是native PHP,所以如果用戶沒有提交表單,它沒有設置。這就是爲什麼我使用codeigniter相當於$ this-> input-> post,如果它不存在則爲FALSE,如果表單已提交,則爲post值。使用$ this-> input-> post('category_id')!== false? $ this-> input-> post('category_id'):1您將能夠在頁面加載時顯示默認選項(此處爲1),以及用戶在提交表單後輸入的內容。 – Davor

+0

但我試過,它沒有返回任何結果.. – user3453256

0
在裁判

從你的問題:Edit form echoes previously saved data correctly but does not update the form fields

<?php 
foreach($model as $row) 
{ 
if($row="") 
{ 
$selected_category_id = ''; 
$options = array 
(
    '1' => 'Option1', 
    '2' => 'Option2', 
    '3' => 'Option3', 
    '4' => 'Option4', 
); ?> 
<?php echo form_dropdown('category_id', $options, $selected_category_id);?> 
} 
else 
{ 
$selected_category_id = '$row->(database column name where vale is stored)'; 
$options = array 
(
    '1' => 'Option1', 
    '2' => 'Option2', 
    '3' => 'Option3', 
    '4' => 'Option4', 
); ?> 
<?php echo form_dropdown('category_id', $options, $selected_category_id);?> 
} 
} 
相關問題