Devdit
 

jQuery $(this) คืออะไร หมายความว่าอะไร

2.5K

jQuery $(this) คือ การอ้างอิงถึงตัวเองที่กำลังถูกเรียกให้ทำงานอยู่ หมายความว่า สมมุติหน้าเว็บไซต์มีปุ่ม 3 ปุ่ม คือ A, B, C ถ้าผู้ใช้งานกดปุ่ม A ตัว $(this) ก็จะอ้างถึงปุ่ม A เท่านั้นไม่เกี่ยวกับปุ่มอื่นๆ สามารถเขียนโปรแกรมได้ดังนี้

 

ตัวอย่าง jQuery $(this) คืออะไร หมายความว่าอะไร

<input type="button" value="A" class="btn">
<input type="button" value="B" class="btn">
<input type="button" value="C" class="btn">
<div id="result" style="margin-top:.2rem"></div>
<script>
   $(".btn").click(function(){
       let v = $(this).val();
       $("#result").html( "คุณกดปุ่ม "+v );
   });
</script>

ผลลัพธ์

คุณกดปุ่ม A

คำอธิบาย

จากโค้ดตัวอย่าง มีการกำหนด class="btn" ให้กับทั้ง 3 ปุ่ม ภายใน jQuery กำหนด $(".btn").click นั้นหมายความว่าถ้ามีการกดคลิกที่ปุ่มใดปุ่มหนึ่งเกิดขึ้น เราจะไม่มีทางรู้เลยว่า ผู้ใช้งานกดปุ่มไหนเพราะทั้ง 3 ปุ่มใช้ class btn เหมือนกัน จึงต้องใช้คำสั่ง $(this) ซึ่งจะอ้างถึงตัวเองที่กำลังถูกเรียกให้ทำงานอยู่ จากตัวอย่างก็คือปุ่มที่กำลังถูกกดอยู่นั้นเอง ทำให้สามารถแยกได้ว่าปุ่ม หรือ elements ใดกำลังทำงาน และสามมารถเขียนโปรแกรมต่อได้อย่างถูกต้อง

แก้ไข 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ