A-AA+then

เรื่อง addEvent หลายแท็ก

1,197
<script type="text/javascript">
var buttonClick = function (){
    alert("buttonClick:"+this.value);
};
$G("show").addEvent('click',buttonClick);

</script>


<?php
    for($i=0;$i<=2;$i++){   ?>

        <input type="button" value="<?=$i?>" id='show' />
<?php     }
?>


ตัวอย่างโค้ดนี้ ถูกเรียกผ่าน gajax จากอีกไฟล์จึงใช้ $G().addEvent ตามที่อาจารย์แนะนำ
ในโค้ดแสดง 3 ปุ่ม แต่ event ทำงานที่ปุ่มแรก ปุ่มเดียว

มีวิธีที่ addEvent ได้กับ หลายแท็กมั้ยครับ เพราะในกรณีนี้ ผมนึกว่า id=show จะถูก add ไปพร้อมกัน

ขอบคุณครับ

2 ความคิดเห็น

 ควรอ่าน บทความอื่นๆประกอบนะครับ...

เราไม่สามารถใช้ id หรือ name ซ้ำกันได้ครับ ดังนั้น id ที่ใช้ควรเป็น id='show_$l' ครับ ซึ่งจะได้ id ที่ไม่ซ้ำกัน

ส่วนการเขียนฟังก์ชั่นนั้น เราจำเป็นต้องเขียน 1 ฟังก์ชั่น ต่อ 1 input ครับ เนื่องจากแต่ละฟังก์ชั่น ต้องอ้างถึง id แต่ละตัวที่ต้องต่างกันเสมอ

ส่วนการใช้กับ input หลายๆตัวโดยที่ไม่ต้องเขียนโค้ดมากๆ ก็อาจทำได้โดยการวนลูปแบบเดียวกันกับการสร้าง input ครับ (วน 2 ครั้ง ครั้งแรกสร้าง input ครั้งที่ 2 สร้าง Javascript)
1

ขอบคุณครับ
2
^