Vấn đề với FCKEditor Rich Text

Tô Như Dũng
(To Nhu Dung)

New Member
Mình có một vấn đề nhỏ thế này cần thỉnh giáo.

Trong site của mình có một form sử dụng rich text của FCKEditor

1. Trong trang quản lý của staff, mình đặt một thẻ <DIV id = featurebox></DIV>
2. Khi staff click vào chức năng "Manage Home Page Content" thì sử dụng AJAX để load một số form từ server vào thẻ DIV khai báo ở trên.
Form hiển thị đúng, Rich Text có hiện ra.
Dưới đây là đoạn XMLHttp.responseText để ghi form vào thẻ DIV

PHP:
<form method="POST" action="/" name="addcontent">
<input type="hidden" name="go" value="managepage" />
<input type="hidden" name="action" value="addcontent" />
<input type="hidden" name="page" value="home" />
<table width="100%" border="0" align="center">
		  <tr>
  			<td valign="top">Content:</td>
  			<td>{php}
				$FCKComment = new FCKeditor('indexcontent') ;
				$FCKComment->BasePath = '/FCKeditor/';
				$FCKComment->Value = '';
				$FCKComment->Create() ;
				{/php}			</td>
		  </tr>
	  <tr>
    	<td valign="top">Title:</td>
    	<td><input type="text" name="title" size="40" />	</td>
	  </tr>
	  <tr valign="top">
	    <td colspan="2"><input type="button" value="submit"  onclick= "SubmitForm()"/></td>
    	</tr>
	</table>
</form>

Do muốn dùng AJAX do một số yêu cầu cụ thể nên mình ko muốn reload lại page để POST dữ liệu mà muốn gọi hàm SubmitForm để POST dữ liệu. Dưới đây là hàm SubmitForm
PHP:
function SubmitForm()
{
	var xmlHttpSubmitContent	
	xmlHttpSubmitContent = new ActiveXObject('Microsoft.XMLHTTP')
	xmlHttpSubmitContent.Open('POST',"/",false)
	xmlHttpSubmitContent.setRequestHeader('Content-Type','application/x-www-form-urlencoded')
	xmlHttpSubmitContent.send("go="+document.addcontent.go.value+"&action="+document.addcontent.action.value+"&page="+document.addcontent.page.value+"&indexcontent="+document.addcontent.indexcontent.value+"&title="+document.addcontent.title.value)
}

Đến đây có vấn đề là khi dữ liệu được POST đi và INSERT vào SQL thì ko lấy được giá trị của Rich Text do FCKEditor tạo ở trên (id = indexcontent, name = indexcontent) Field insert từ Rich Text bị blank, các field khác bình thường.

Đã debug bằng những cách sau
1. Remove rich text, thay vào bằng textarea bình thường, cùng name (indexcontent), các phần khác giữ nguyên --> submit ko có vấn đề

2. Để nguyên rich text như cũ, ko dùng hàm SubmitForm mà dùng method=POST của Form -> submit cũng bình thường. In ra màn hình print_r($_POST) thì có hiện ra [indexcontent] -> "blah blah blah"

3. Để nguyên Rich Text, trong hàm submit ko POST dữ liệu nữa mà để alert(document.addcontent.title.value) thì in dc ra nội dung của field title.
Nếu thay bằng alert(document.addcontent.indexcontent.value) thì in ra blank

4. trong hàm submit nếu thay alert trong mục 3 bằng alert(document.getElementById("indexcontent") thì alert ra là [object] -> có tồn tại object textarea indexcontent

5. Lấy value của textarea indexcontent qua getElementById thì vẫn bị blank

Trong lúc ngồi tìm hiểu tiếp, nếu bạn nào có kinh nghiệm chỉ giúp thì tốt quá :D, rất cám ơn vì giúp mình tiết kiệm được chút thời gian.
Xin cảm ơn ^^
 
Back
Bên trên