2010-08-16 38 views
8

Tôi đang cố gắng tùy chỉnh CSS/HTML để hiển thị thông báo lỗi trong trình mã hóa để tôi cũng có thể áp dụng một thẻ và tạo kiểu cho chúng.Làm thế nào để bạn tùy chỉnh/lỗi codeigniter kiểu?

Tôi đã cố gắng sử dụng Google này và tìm kiếm hướng dẫn nhưng phải tìm kiếm các cụm từ sai - có ai có thể giúp tôi không?

Trả lời

22

Bạn có thể làm một cái gì đó như thế này ...

$this->form_validation->set_error_delimiters('<div class="error">', '</div>'); 

Xem liên quan Codeigniter documentation

Lưu ý: Cập nhật để sửa chữa chức năng tham khảo (xác nhận nên form_validation).

+0

Cảm ơn, không biết làm thế nào tôi bỏ lỡ điều đó ... xin lỗi. – Walker

+2

Tôi không thực sự thích, rằng bạn phải gọi phương thức này mỗi lần bạn cần thực hiện xác nhận biểu mẫu. Nếu bạn muốn tránh trùng lặp, bạn có thể đặt nó trên toàn cầu theo phương pháp này: http://chris-schmitz.com/changing-default-error-delimiters-in-codeigniter/ – petrkotek

+0

@petrkotek BẠN DA MVP THANK YOU –

1
$this->validation->set_error_delimiters('<div class="error">', '</div>'); 
3

Tôi khuyên bạn nên thanh lịch hơn.

Đã xử lý tệp MY_Form_validation.php và thả tệp đó vào ứng dụng/thư viện với mã sau sẽ ghi đè các dấu phân cách mặc định.

class MY_Form_validation extends CI_Form_validation { 

    public function __construct() 
    { 
     parent::__construct(); 

     $this->_error_prefix = '<p class="error">'; 
     $this->_error_suffix = '</p>'; 
    } 
} 

Liên kết với gốc: http://chris-schmitz.com/changing-default-error-delimiters-in-codeigniter/

0

Bạn có thể sử dụng phương pháp "set_error_delimiters" của thư viện "Form Validation":

$this->validation->set_error_delimiters('<div class="error">', '</div>'); 

Ngoài ra bạn có thể thực hiện trên mã nội tuyến với hình thức helper:

validation_errors('<div class="error">', '</div>') 

Hoặc tạo mở rộng lớp trên thư viện form_validation:

class MY_Form_validation extends CI_Form_validation 
{ 
    public function __construct($rules = array()) 
    { 
     // applies delimiters set in config file. 
     if(! isset($rules['error_prefix'])) 
     { 
      $rules['error_prefix'] = '<div class="error">'; 
     } 

     if(! isset($rules['error_suffix'])) 
     { 
      $rules['error_suffix'] = '</div>'; 
     } 

     parent::__construct($rules); 
    } 
} 

Tôi thích phương pháp cuối cùng vì cho phép đặt kiểu theo mặc định và ghi đè từ trước khi giải thích phương pháp.

Xin lỗi vì tiếng anh của tôi :)

0
$this->validation->set_error_delimiters('<div class="error">', '</div>'); 

Đây là cú pháp sai. chính xác là

$this->form_validation->set_error_delimiters('<div class="error">', '</div>'); 
Các vấn đề liên quan