ในไซต์อีคอมเมิร์ซเมื่อเพิ่มรายการลงในรถเข็นฉันต้องการแสดงหน้าต่างป๊อปอัปพร้อมตัวเลือกที่คุณสามารถเลือกได้ ลองนึกภาพคุณกำลังสั่งซื้อ iPod Shuffle และตอนนี้คุณต้องเลือกสีและข้อความที่จะแกะสลัก
ฉันต้องการให้หน้าต่างเป็นแบบโมดัลดังนั้นฉันจึงใช้Lightbox ที่มีการเรียก Ajax ตอนนี้ฉันมีสองตัวเลือก:
ตัวเลือก 1: ส่งข้อมูลเท่านั้นและสร้างมาร์กอัพ HTML โดยใช้ JavaScript
สิ่งที่ดีเกี่ยวกับเรื่องนี้คือมันทำให้คำขออาแจ็กซ์ลดน้อยลงและไม่ผสมข้อมูลกับมาร์กอัป
สิ่งที่ไม่ดีนักเกี่ยวกับเรื่องนี้คือตอนนี้ฉันต้องใช้ JavaScript เพื่อแสดงผลของฉันแทนที่จะมีเทมเพลตเอ็นจิ้นบนฝั่งเซิร์ฟเวอร์ทำ ฉันอาจจะสามารถที่จะทำความสะอาดวิธีบิตโดยใช้วิธีการแก้ปัญหา templating ฝั่งไคลเอ็นต์
ตัวเลือก 2: ส่งมาร์กอัพ HTML
สิ่งที่ดีเกี่ยวกับเรื่องนี้คือฉันสามารถมีเครื่องมือสร้างเทมเพลตฝั่งเซิร์ฟเวอร์เดียวกับที่ฉันใช้สำหรับงานการเรนเดอร์ที่เหลือ (Django) ทำการเรนเดอร์ของไลท์บ็อกซ์ JavaScript ใช้เพื่อแทรกแฟรกเมนต์ HTML ลงในหน้าเท่านั้น ดังนั้นจะทำให้การเรนเดอร์ไปยังเอ็นจินการเรนเดอร์อย่างชัดเจน ทำให้รู้สึกถึงฉัน
แต่ฉันรู้สึกไม่สบายใจที่จะรวบรวมข้อมูลและมาร์กอัพในการโทร Ajax ด้วยเหตุผลบางอย่าง ฉันไม่แน่ใจว่าอะไรทำให้ฉันรู้สึกไม่สบายใจ ฉันหมายความว่ามันเป็นวิธีเดียวกับที่ทุกหน้าเว็บแสดงผล - ข้อมูลและมาร์กอัป - ใช่ไหม?