ปัญหา Ajaxกับwysiwyg

กำลังเขียนระบบส่งเมล์ค่ะ โดยContent สามารถจัดรูปแบบด้วย wysiwyg แล้วส่งค่าให้อีก page ด้วย ajax แต่ค่าที่จัดรูปแบบด้วย wysiwyg ส่งไม่ได้ค่ะ แต่ค่าที่เป็น textfield ธรรมดาส่งได้ค่ะ  เกิดจากอะไรเหรอค่ะ รบกวนผู้รู้ด้วยค่ะ ไม่เก่ง ajax เลยค่ะ


ตัวอย่างcodeค่ะ



if (action=="sendtest") {

 var url="SendNewsletter.php";

 

}else{

 var url="add_newsletter_template.php";

}



var params=$("formID").serialize();



new Ajax.Request(url, {onComplete: showResponse, onException:showException, onFailure:showException, asynchronous:true, method: 'post', evalScripts:false, postBody:params});





 

06 ต.ค. 2553 8 2,346

ไม่รู้ว่าใช้อะไรในการส่งเมล์นะครับ ถ้าต้องการส่งเมล์แบบ HTML ผมแนะนำให้ใช้ PHPMailer ในการส่งครับ



ถ้าจะส่งผ่าน mail ของ PHP กำหนด Header เป็น HTML หรือยังครับ ดู mail HTML
#1


ปัญหาไม่ได้อยู่ที่การส่งเมล์ค่ะ ปัญหาคือการส่งค่าใน textarea ที่ใช้ wysiwyg จัดรูปแบบค่ะ 



สรุปแล้วมี 2 pageค่ะ

1.index.php เป็นหน้าที่ มี form ให้กรอก หัวข้อของ email แล้วเนื้อหาของemail(textarea ที่ใช้ wysiwyg จัดรูปแบบ) 

2.send_mail.php เป็นหน้าที่ใช้รับค่าจาก index.php โดยใช้ ajax code จากข้างบนส่ง

 

  แต่ปรากฎว่าค่าที่ส่งได้ มีแต่ หัวข้อของemail ซึ่งเป็น textfield ธรรมดา แต่เนื้อหาของemail(textarea ที่ใช้ wysiwyg จัดรูปแบบ) ส่งไม่ได้ค่ะ กลายเป็นค่าว่าง เลยคิดว่าปัญหาน่าจะอยู่ที่ Ajax.Request ที่ไม่สามารถส่งค่าจาก  form ในรูปของ html ได้ค่ะ

เพราะถ้าเป็นการส่งค่าโดยวิธีธรรมดาจะส่งได้ พอเปลี่ยนเป็นใช้ ajax ส่งแล้วมีปัญหาค่ะ 



 


#2


เพิ่งค้นกระทู้เก่าๆ เจอหัวข้อ GAJAX กับ CKEditor 3.0.1http://www.goragod.com/forum.html?wbid=1310&q=ajax

ปัญหาน่าจะเหมือนกันค่ะ แต่เปลี่ยนจาก CKEditor 3.0.1เป็น wysiwyg น่ะค่ะ แล้วก็พยายามไปอ่าน document ของ wysiwyg

แต่ไม่มีที่เขียนถึงค่ะ


#3

เข้าใจและ...



ปัญหาเกิดจากเราไม่สามารถอ่านข้อความตรงๆจาก textarea ได้ครับ เช่น textarea.value จะใช้ไม่ได้กับ wysiwyg โดยทั่วไป



การแก้ไขมีวิธีเดียวครับคือต้องไปหาเอาจาก document ของ wysiwyg ที่ใช้ ซึ่งจะแตกต่างกันตามแต่ละยี่ห้อครับ หรือดูจากตัวอย่างของ wysiwyg นั้นๆ (มันจะมีฟังก์ชั่นของ Javascript ที่สามารถอ่านข้อความที่เขียนได้ครับ)
#4


ขอบคุณค่ะ สงสัยจะจนปัญญาแล้วค่ะ เพราะไปอ่าน document ก็บอกวิธีใช้บรรทัดเดียวเลยค่ะ พยายามมา 2 วัน คงต้องส่งโดยวิธีธรรมดาแล้วค่ะ


#5

ผมว่านะ ทำไม่ไม่ submit ผ่านฟอร์มละครับ เพราะมันน่าจะได้ผลดีกว่า เช่น



1.ปกติแล้ว ฟอร์มส่งเมล์ เมื่อส่งแล้วมักจะต้องเคลียร์ฟอร์ม ดังนั้น submit ไปเลยน่าจะดีกว่า ไม่ต้องมาเขียนโค้ดเพื่อเคลียร์ฟอร์มเอง

2.การส่งโดยการ submit ผ่านฟอร์ม โดยปกติ wysiwyg ทั่วไปทำได้ทั้งนั้น โดยรับค่าที่ name ของ textarea ที่เรากำหนด ดังนั้นมันจะเป็นการง่ายมากหากใช้วิธีนี้
#6


คือทำ form sent mail ที่สามารถ save draft ได้ด้วยน่ะค่ะ คือทั้ง send mail หรือ save draft ได้ใน form เดียวน่ะค่ะ เหมือน hotmail น่ะ ความจริงก็ submit ผ่าน form ง่ายกว่ามากจริงๆค่ะ หุหุ


#7

จะ draft ไว้ ก็ทำตอน submit ก้เหมือนกันแหละครับ
#8
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^