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

<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 ไปพร้อมกัน

ขอบคุณครับ
07 ก.ค. 2553 2 1,918

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

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

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

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

ขอบคุณครับ
#2
ความคิดเห็น
ไฟล์อัปโหลด ชนิด jpg, jpeg ขนาดไฟล์ไม่เกิน 1024
^