showon คำสั่งที่จะเลือก field ออกมาแสดง

แชร์ ความรู้ในการ พัฒนา Joomla Component Extension Module Plugin

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
jamepiyawat
PHP VIP Members
PHP VIP Members
โพสต์: 2008
ลงทะเบียนเมื่อ: 21/05/2019 10:45 am

showon คำสั่งที่จะเลือก field ออกมาแสดง

โพสต์ที่ยังไม่ได้อ่าน โดย jamepiyawat »

สวัดดีครับผมได้มีโอกาสทำ Module ของ joomla ขึ้นมาหนึ่งตัวในส่วนของการทำ Module นั้นก็จะมีหน้าตั้งค่าที่จะทำให้ผู้ใช้ได้ปรับแต่งฟีเจอร์ Module ที่เราได้ทำขึ้นมานั้นเองทำให้ซึ้งหน้าตั้งค่าของ Module นั้นเราก็จะมาทำในหน้าไฟล์ XML ของ Module ของเรานั้นเองซึ่งจะเป็นการสร้าง Field ให้มันแสดงประมาณว่า ให้มี Field listออกมาให้ผู้ใช้ได้เลือกว่าจะเป็น yes หรือ no ถ้าผู้ใช้เลือก yes ก็จะมี Field กล่องออกมาให้ผู้ใช้ได้กรอกข้อมูลเพิ่มเติมแต่ถ้าผู้ใช่เลือก NO ก็จะไม่แสดง Field กล่องข้อความนั้นออกมาด้วยการใช้คำสั่ง showon วิธีการใช้จะเป็นอย่างไรลองไปดูกันเลย

ให้เราทำการใส่โค้ดนี้ไฟล์ XML ของ Module ซึ้งจะเป็น Field list ทั่ว ๆ ไป

โค้ด: เลือกทั้งหมด

<field
    name="description"
    type="list"
      label="ต้องการจะใส่คำอธิบายเพิ่มเติมหรือไม่"
    >
    <option value="1">JYES</option>
    <option value="0">JNO</option>
</field>
หลังจากนั้นเราก็จะทำการเขียน Field text ออกมาแต่ว่า Field นี้จะแสดงก็ต่อเมื่อผู้ใช้ตอบ yes เท่านั้นก็ให้เราเขียน Field เหมือนเดิมแต่ว่าให้ใช้คำสั่ง showon ลงไป

โค้ด: เลือกทั้งหมด

<field
    name="bar"
    type="text"
      label="ใส่คำอธิบายเพิ่มเติม"
    showon="description:1">

เราก็จะเห็นได้ว่าคำสั่ง showon เป็นคนการตรวจสอบว่า name ไหน เก็บค่าอะไรไว้ ในตัวอย่างนี้ก็จะเป็น showon="description:1" ก็จะหมายความว่า description ได้เก็บค่า 1 เอาไว้หรือไม่ถ้าใช้ก็ให้แสดง Field text นั้นออกมานั้นเอง

ผลลัทธ์ที่ได้
ถ้าเราเลือก YES ก็จะมี textbox ออกมา
Selection_999(216).png
Selection_999(216).png (9.75 KiB) Viewed 675 times
ถ้าเราเลือก NO ก็จะไม่มี textbox ออกมา
Selection_999(217).png
Selection_999(217).png (4.97 KiB) Viewed 675 times

เป๋็นอย่างไรกันบ้างครับสำหรับคำสั่ง showon ใน joomla เป็นอะไรที่ง่ายกว่าที่คิดใช้ไหมล่ะครับแต่สำหรับคนที่ไม่รุ้อย่างผมคงจะมองว่าทำยังไงกันนะแบบนี้แหละครับจึงได้เขียนบทความมานำเสนอกันก็หวังว่าบทความนี้จะเป็นความรู้ให้กับทุกท่านได้ไม่มากก็น้อยนะครับ
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 34