2016-06-05 9 views
0

Ich möchte Rating-System (mit Sternen) für jeden Artikel erstellen. Sterne würden nur angezeigt, wenn der Nutzer den angegebenen Artikel nicht bewertet hat. Ich habe dies durch Einchecken der Datenbank erreicht, wenn die Bewertung des Benutzers nicht null ist. Um die Bewertung des Benutzers (Anzahl der ausgewählten Sterne) zu erhalten, habe ich ein verstecktes Eingabefeld und eine Übermittlungsschaltfläche erstellt, die diese Daten zurück an die Datenbank sendet. Das Problem tritt auf, wenn der Benutzer die Senden-Schaltfläche drückt, ohne die Sterne zu überprüfen. Daher wird 0 in db gespeichert. Um zu verhindern, dass ich einen jQuery-Aufruf gemacht habe, fadeIn die Übermittlungsschaltfläche, wenn die Bewertung vorgenommen wird.jQuery klicken Funktion funktioniert nicht und Schaltfläche nicht fadeIn (Laravel)

Hier ist mein Code:

  ... 
      @foreach($services as $service) 
      ... 
      @if($service->ratingValue == NULL) 
        <div id="{{$service->id}}" class="rate"></div> //THIS DIV IS PLACE WHERE STARS ARE GENERATED BY ANOTHER JQUERY 
         <input id="input2" type="hidden" name="rateValue"> 

         <button style="display:none" id="{{$service->created_at}}" type="submit">OK</button> 
         <script type="text/javascript"> 

         $(document).ready(function(){ 

          $('#{{$service->id}}').click(function(){ 
          $('#{{$service->created_at}}').fadeIn(); 
          }); 
         }); 

         </script> 
     @endif 
     @endforeach 

Aber Taste nach oben zeigt nicht ... Wenn ich id-Wert divs als 1 (zum Beispiel), und Schaltfläche als 2 (und steckt es in jQuery) manuell eingeben Es klappt. Was mache ich hier falsch? Oder gibt es einen besseren Weg, dies zu tun? Auch ich habe versucht, eine AJAX-Anfrage zu erstellen, um Rating-Wert in db zu speichern, aber es hat auch nicht funktioniert.

+0

Was versuchen Sie damit zu erreichen? '

+0

Ich möchte, dass diese Schaltfläche standardmäßig ausgeblendet wird, wenn die Seite geladen wird. Ich habe es auch versucht: '$ (" # {{$ service-> created_at}} "). Hide();' und dann zeigen, wenn auf Stern geklickt wird, aber erfolglos. – harunB10

Antwort

0

denke ich den Knopf Stil

"display:none".. 

nicht erforderlich, wenn Sie bereits die if-Anweisung nicht festgelegt, es zu zeigen, wenn die ratingValue null ist.

Verwandte Themen