2011-10-16 50 views
5

Tôi có mã cho phép bạn định dạng văn bản trong một vùng văn bản có in đậm, gạch chân, gạch ngang hoặc in nghiêng. Nhưng nó hiển thị các thẻ html thay vì thực sự định dạng nó. Tôi biết một khi tôi xuất nó bên trong một div, nó bị bệnh được định dạng, nhưng tôi muốn hiển thị định dạng trong khi người dùng viết văn bản.Tôi làm cách nào để hiển thị định dạng HTML bên trong vùng văn bản?

Làm cách nào để bật định dạng? JavaScript là tốt, tôi đang sử dụng JQuery vào lúc này. Tôi cũng sẽ không sử dụng một trình soạn thảo WYSIWYG, nếu có một tùy chọn khác.

Cảm ơn bạn đã được trợ giúp.

Trả lời

0

Tôi tin rằng chỉ có thể sử dụng một số phần tử div hoặc phần tử html có thể tạo kiểu thay vì vùng văn bản của bạn. Với Javascript, bạn sẽ thêm chức năng của vùng văn bản.

Bạn sử dụng một số hệ thống định dạng như thế này ở đây trên SO như thế nào? Đó là nhiều hơn nữa thanh lịch theo ý kiến ​​của tôi, hơn giả WYSIWYG.

0

Không thể thực hiện bên trong Textarea, bạn sẽ phải thực hiện trình soạn thảo wysiwyg hoặc thứ gì đó tương tự. Nó khá dễ dàng để làm cho một trong những người mình. Đây là một hướng dẫn khá tốt:

Devgurus wysiwyg tutorial

14

Sử dụng contentEditable thuộc tính trên div yếu tố

<div contentEditable="true"> 
</div 

Bằng cách này bạn có thể định dạng đầu vào của bạn trong bất kỳ cách nào mong muốn, chỉ cần không quên đúng cách thoát dữ liệu.

+0

Điều này chỉ dành cho các trình duyệt hỗ trợ HTML5, điều này là hợp lý nhưng sẽ không giải quyết được độ tin cậy của trình duyệt chéo. – MacMac

+3

@lolwut: 'contentEditable' đã được hỗ trợ trong tất cả các trình duyệt chính (máy tính để bàn) trong [một thời gian] (http://caniuse.com/contenteditable). – You

2

Chỉ là một ý nghĩ; nếu bạn chỉ muốn cho phép người dùng xem phản hồi của họ sẽ như thế nào, bạn có thể lấy tín hiệu từ trang web này và có một loại "xem trước" div ngay phía trên/bên dưới hộp nhận xét. Bạn có thể sử dụng onKeyUp để đưa mã vào div để giữ nó lên làm ngày như các loại người dùng. Nó không hoàn hảo, nhưng nó có thể là tốt như bạn sẽ nhận được nếu bạn không muốn sử dụng một WYSIWYG.

Điều đó đang được nói, tùy chọn contentEditable + WYSIWYG có thể thân thiện với người dùng hơn và đơn giản hơn, IMHO.

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