php
  • jquery
  • ajax
  • 2016-09-20 1 views 0 likes 
    0

    Meine PHP HTML-Code ist dies:jquery arbeitet nur für die neueste Taste nicht alle Taste

    <?php 
    
    foreach($questions as $question){ 
        echo" 
        <div id='postShare'>    
         <div class='col-md-10 col-md-offset-1' id='listPost'> 
          <div class='list-group'>  
           <li class='list-group-item text-center '> 
            <span class='pull-left' id='question_author'>".$question->author."</span> 
            &nbsp; 
            <span class='pull-right' id='question_time'><p>".time_ago($question->time)."</p></span> 
            <hr> 
            <span class='pull-right' style='color:red;font-size:11px;'>سوال</span> 
            <br> 
            <center><h4 id='question_title'>" .$question->title. "</h4></center> 
            <hr> 
            <span class='pull-right' style='color:blue;font-size:11px;'>توضیحات</span> 
            <br> 
            <h5 id='question_desc'>".$question->description."</h5> 
            <hr>    
            <span class='pull-right' style='color:GoldenRod;font-size:11px;'>کد برنامه</span> 
            <br> 
            <pre id='question_code'>".$question->code."</pre> 
            <hr> 
            <button class='btn btn-primary' id='send_answer'>پاسخگویی به این سوال</button> 
           </li> 
          </div> 
         </div> 
        </div>"; 
    } 
    
    ?> 
    

    und meine Jquery-Datei ist dies:

    $(function(){ 
        $("#send_answer").click(function(e){ 
         alert("cliked"); 
         e.preventDefault(); 
        }); 
    }); 
    

    Dieser PHP-Code nur holen und die Datenbank zeigen Daten mit einer Schaltfläche. Ich möchte, wenn ich auf diese Schaltfläche klicke, zeigt es eine Warnung an. Seine Arbeit für die neuesten Daten, die holen und nicht für alle arbeiten.

    +2

    Weil du 'id' Werte in Ihrem HTML sind duplizieren. Was ist ungültig, so ist das Verhalten des JavaScript nicht definiert. – David

    +0

    Dies ist illegal - Sie erstellen Schaltflächen mit derselben ID. Verwenden Sie eine Klasse, keine ID für geloopte Elemente. –

    +0

    @SterlingArcher "illegal"? Meinst du "ungültig"? –

    Antwort

    3

    Sie müssen Schaltfläche mit der gleichen class erstellen. Das Erstellen mit demselben id führt dazu, dass nur einer bearbeitet wird.

    PHP

    <?php 
        foreach($questions as $question) { 
         echo " 
          <div id='postShare'> 
           <div class='col-md-10 col-md-offset-1' id='listPost'> 
            <div class='list-group'>  
             <li class='list-group-item text-center '> 
              <span class='pull-left' id='question_author'>".$question->author."</span>&nbsp; 
              <span class='pull-right' id='question_time'><p>".time_ago($question->time)."</p></span><hr> 
              <span class='pull-right' style='color:red;font-size:11px;'>سوال</span><br><center><h4 id='question_title'>" .$question->title. "</h4></center><hr> 
              <span class='pull-right' style='color:blue;font-size:11px;'>توضیحات</span><br><h5 id='question_desc'>".$question->description."</h5><hr>    
              <span class='pull-right' style='color:GoldenRod;font-size:11px;'>کد برنامه</span><br><pre id='question_code'>".$question->code."</pre><hr> 
              <button class='btn btn-primary send_answer'>پاسخگویی به این سوال</button> 
             </li> 
            </div> 
           </div> 
          </div>"; 
        } 
    ?> 
    

    jQuery

    $(function() { 
        $(".send_answer").click(function(e) { 
         alert("cliked"); 
         e.preventDefault(); 
        }); 
    }); 
    
    +0

    Vielen Dank. es funktioniert –

    +0

    Glücklich zu helfen :) –

    +0

    Bitte akzeptieren Sie die Antwort –

    Verwandte Themen