2012-08-09 34 views
5

Tôi có chế độ xem sau đây nhưng làm cách nào để áp dụng set_value cho nó mà không có mặc định là Vui lòng chọn?PHP Codeigniter: set_value trên menu thả xuống

<label for="add_fields_type">Type: </label> 
<select name="add_fields_type" id="add_fields_type"> 
    <option value="">Please Select</option> 
    <option value="<?php echo set_value('input'); ?>">Input</option> 
    <option value="<?php echo set_value('textarea'); ?>">Text Area</option> 
    <option value="<?php echo set_value('radiobutton'); ?>">Radio Button</option> 
    <option value="<?php echo set_value('checkbox'); ?>">Check Box</option> 
</select> 

Cập nhật:

Xem:

<label for="add_fields_placeholder">Placeholder: </label> 
    <select name="add_fields_placeholder" id="add_fields_placeholder"> 
     <option value="">Please Select</option> 
     <option value="<?php echo set_value('yes'<?php echo set_select('add_fields_placeholder','yes', (!empty($placeholderType) && $placeholderType == "yes" ? TRUE : FALSE));?>">Yes</option> 
     <option value="<?php echo set_value('no' <?php echo set_select('add_fields_placeholder','no', (!empty($placeholderType) && $placeholderType == "no" ? TRUE : FALSE)); ?>">No</option> 
    </select> 

    <label for="add_fields_placeholderValue">Placeholder Text: </label> 
    <input type="text" name="add_fields_placeholderValue" id="add_fields_placeholderValue" value="<?php echo set_value('add_fields_placeholderValue'); ?>"> 

    <label for="add_fields_type">Type: </label> 
<select name="add_fields_type" id="add_fields_type"> 
    <option value="">Please Select</option> 
    <option value="input" <?php echo set_select('add_fields_type','input', (!empty($fieldType) && $fieldType == "input" ? TRUE : FALSE)); ?>>Input</option> 
    <option value="textarea" <?php echo set_select('add_fields_type','textarea', (!empty($fieldType) && $fieldType == "textarea" ? TRUE : FALSE)); ?>>Text Area</option> 
    <option value="radiobutton" <?php echo set_select('add_fields_type','radiobutton', (!empty($fieldType) && $fieldType == "radiobutton" ? TRUE : FALSE)); ?>>Radio Button</option> 
    <option value="checkbox" <?php echo set_select('add_fields_type','checkbox', (!empty($data) && $data == "checkbox" ? TRUE : FALSE)); ?>>Check Box</option> 
</select> 

Bộ điều khiển:

$data['fieldType'] = $this->input->get('add_fields_type'); 
$data['placeholderType'] = $this->input->get('add_fields_placeholder'); 

Dòng 16:

<option value="<?php echo set_value('yes'<?php echo set_select('add_fields_placeholder','yes', (!empty($placeholderType) && $placeholderType == "yes" ? TRUE : FALSE));?>">Yes</option> 

Trả lời

7

Điều này sẽ giúp:

Controller (test.php)

<?php 
    class Setup extends CI_Controller { 

     function index() { 
      //for the set_select() function 
      $this->load->library('form_validation'); 

      //for base_url() function 
      $this->load->helper('url'); 

      $list['data'] = $this->input->get('add_fields_type'); 

      $this->load->view('test_view.php', $list); 
     } 
?> 

Xem (test_view.php)

<!DOCTYPE HTML> 
<html> 
<body> 
<form action="<?php echo base_url(); ?>test"> 
    <label for="add_fields_type">Type: </label> 
    <select name="add_fields_type" id="add_fields_type"> 
     <option value="">Please Select</option> 
     <option value="input" <?php echo set_select('add_fields_type','input', (!empty($data) && $data == "input" ? TRUE : FALSE)); ?>>Input</option> 
     <option value="textarea" <?php echo set_select('add_fields_type','textarea', (!empty($data) && $data == "textarea" ? TRUE : FALSE)); ?>>Text Area</option> 
     <option value="radiobutton" <?php echo set_select('add_fields_type','radiobutton', (!empty($data) && $data == "radiobutton" ? TRUE : FALSE)); ?>>Radio Button</option> 
     <option value="checkbox" <?php echo set_select('add_fields_type','checkbox', (!empty($data) && $data == "checkbox" ? TRUE : FALSE)); ?>>Check Box</option> 
    </select> 
    <input type="submit" /> 
</form> 
</body> 
</html> 

Lưu ý: Tham số thứ ba của set_select() xác định liệu có nên được lựa chọn hay không

+0

Cảm ơn, tôi nhận được lỗi Parse: lỗi cú pháp, không mong muốn '?' –

+0

Dòng nào? Bởi vì tôi đã thử và nó đã làm việc tốt cho tôi –

+0

Tôi đã cung cấp đầy đủ ** Controller ** và ** View ** code ngay bây giờ. Đơn giản chỉ cần sao chép dán và thử. –

3

Hãy thử điều này:

<option value="<?php echo set_value('textarea'); ?>" <?php echo (set_value('textarea')=='TEXTAREA')?" selected=' selected'":""?>>Text Area</option> 

Trên TEXTAREA là giá trị bạn đang dự kiến ​​sẽ đến vào tùy chọn

0

Hãy thử điều này: -

Xem url: - - http://codeigniter.com/user_guide/helpers/form_helper.html

$options = array(
        'small' => 'Small Shirt', 
        'med' => 'Medium Shirt', 
        'large' => 'Large Shirt', 
        'xlarge' => 'Extra Large Shirt', 
       ); 

$shirts_on_sale = array('small', 'large'); 

echo form_dropdown('shirts', $options, 'large'); 

// Sẽ sản xuất:

<select name="shirts"> 
<option value="small">Small Shirt</option> 
<option value="med">Medium Shirt</option> 
<option value="large" selected="selected">Large Shirt</option> 
<option value="xlarge">Extra Large Shirt</option> 
</select> 

echo form_dropdown('shirts', $options, $shirts_on_sale); 

// Sẽ sản xuất:

<select name="shirts" multiple="multiple"> 
<option value="small" selected="selected">Small Shirt</option> 
<option value="med">Medium Shirt</option> 
<option value="large" selected="selected">Large Shirt</option> 
<option value="xlarge">Extra Large Shirt</option> 
</select> 
2

Sắp xếp những gì Abid nói, bạn muốn chỉ cần sử dụng set_value() sau khi xác nhận hình thức của bạn.

form_dropdown('add_fields_type', $field_types, set_value('field_type')); 
0

Để sử dụng set_select, bạn cần phải có quy tắc xác thực cho trường được đề cập. Xem câu trả lời của tôi cho một câu hỏi tương tự tại đây: CodeIgniter select_value in form_dropdown

Các vấn đề liên quan