2016-06-27 2 views
0

Ich habe Probleme, ein gewünschtes Ergebnis für meinen Code zu erhalten. Wenn ich ein Array von Daten durchlaufe, arbeitet JavaScript nur mit den ersten widerholten Daten.Wenn ich ein MySQL-Array durchlaufe, arbeitet JavaScript mit den ersten widerholten Daten.

Code Snippet:

 <?php 

        $ids = array(); 


        array_push($ids, getRandom($id)); 
        array_push($ids, getRandom($id)); 
        array_push($ids, getRandom($id)); 

        $ids = array_unique($ids); 
        if (count($ids) > 0) { 
        foreach($ids as $value => $val) { 

         //data saved in variables 


         <li> 
          <div class="row"> 
           <div class="col-xs-3"> 
            <div class="avatar"> 
             <!--avartar --> 
            </div> 
           </div> 
           <div class="col-xs-6"> 
            <!-- data --> 
           </div> 
           <div class="col-xs-3 text-right"> 
            <button id = "button1" class="btn btn-xs btn-warning btn-icon"><i class="fa fa-plus"></i></button> 
           </div> 
          </div> 
         </li> 
         <?php 
         } 
        } 
        ?> 

JavaScript:

<script> 
       $("#button1").on("click",function() { 
        alert("hey"); 
       }); 
</script> 
+3

[___There darf nicht sein, mehrere 'elements' in einem' document', die den gleichen 'id' Wert haben .___] (https erstellen .w3.org/TR/html-markup/global-attributes.html # common.attrs.id) – Rayon

Antwort

0

Versuchen Sie, die JavaScript-Funktion zu ändern für jede Schaltfläche klicken arbeiten:

$("button").on("click",function() { 
    alert("hey"); 
}); 

Und es ist auch erwähnenswert, Sie sollte nicht dieselbe ID für mehr als ein Element verwenden:

// www:
<button id = "button_<?= $val ?>" class="btn btn-xs btn-warning btn-icon"><i class="fa fa-plus"></i></button> 

Dies wird eine eindeutige ID für jede Schaltfläche Element

+0

vielen Dank – adetiwa

1

ids sollte eindeutig sein, versuchen Sie stattdessen eine Klasse.

Die meisten Browser bei der Auswahl der ID in Javascript respektieren den Standard und reagieren nur mit dem ersten Element.

Versuchen Sie, die ID

<div class="col-xs-3 text-right"> 
    <button class="btn btn-xs btn-warning btn-icon"><i class="fa fa-plus"></i></button> 
</div> 

zu entfernen und dann:

$(".btn").on("click",function() { 
    alert("hey"); 
}); 
+0

Dies ist nicht als Antwort zu qualifizieren. Mehr von einem Kommentar .. – Rayon

+1

Sie sollten erklären, wie Sie den Wert ändern in der ID statt JavaScript zu zeigen. Deine Antwort erklärt nicht genug. –

Verwandte Themen