2017-09-16 7 views
0

Ich habe 2 auswählbare Optionen bekommen, was ich brauche, ist etwas, wie den Wert erhalten von der es zu dem verborgenen Feld ausgewählt und fügen Sie so, wenn einreichen geklickt wird es den Wert in die PHP nimmt und abhängig von dem Wert wird jeder einen anderen Ausgang als eine mysql-Datenbank haben.mehrere Werte für ein verstecktes Eingabefeld

Ich habe es mit dem Code arbeitet Ich habe aber ... Es ist die erste Option standardmäßig jedes Mal bekommen, es wird kein Wert bekommt je nachdem, was gewählt wird.

JS

$(document).ready(function(){ 
$(".crimeSelect").hover(
    function() { 
     if ($(this).hasClass('isSelected') == false) { $(this).css('opacity', 0.80); } 
    } 
); 
$(".crimeSelect").click(function() { 
    $("#selec1").val($(this).attr('crimeid')); 
    $(this).css('opacity', 1.00); 
    $('.crimeSelect.isSelected').removeClass('isSelected').css('opacity', 0.40); 
    $(this).addClass('isSelected'); 

}); 
}); 

HTML

<td class="content"> 
    <input type="hidden" value="x" name="Crime" id="selec1"/> 
    <div crimeid="9" name="9" class="crimeSelect" style="cursor:pointer;opacity:0.40;margin:auto;"><img src="images/crimes/Kidnapthepope-Title.png" style="width:100%;height:100%;margin:auto;"/></div> 
</td> 
<td class="content"> 
    <div crimeid="10" name="10" class="crimeSelect" style="cursor:pointer;opacity:0.40;margin:auto;"><img src="images/crimes/Pickpocketadoctor-Title.png" style="width:100%;height:100%;margin:auto;"/></div> 
</td> 

PHP

if(isset($_POST['Crime'])) { 
mysqli_query($conn, "UPDATE Account_Character SET money='0' WHERE username="$username") or die(mysqli_error()); 

Die PHP nur ein kleines Beispiel, aber das ist, was ich das Problem habe mit, den Wert von ausgewählten setzen in versteckte Eingabe und dann an die PHP übergeben.

Danke.

+0

haben Sie versucht, die 'event.target' mit dem Attribut statt' dieses selector' zu bekommen? wie 'var target = $ (event.target)' dann 'target.attr ('criminid');' innerhalb der Callback-Funktion – Maxwell

+0

Nein, ich habe nicht, war mir nicht sicher, ob es nur durch die HTML/PHP-Seite getan werden kann von Dingen und ich bin nicht großartig mit JS/JQUERY. Wie würde ich es tun? in Bezug auf das und Form/php – BoxyGILLETT

+0

Das fehlende PHP-Code ein Schließbügel atlast add '}' atlast –

Antwort

0

versuchen diese

$(document).ready(function(){ 



    $(".crimeSelect").click(function(event) { 
     alert($(event.target).attr('crimeid')); 
     $("#selec1").val($(event.target).attr('crimeid')); 
     $(this).css('opacity', 1.00); 
     $('.crimeSelect.isSelected').removeClass('isSelected').css('opacity', 0.40); 
     $(this).addClass('isSelected'); 

     }); 
    }); 
+0

achten Sie auf die Callback-Funktion, Parameter 'Ereignis', die mit einer '.target' -Eigenschaft kommt, die das DOM-Element ist, das das Ereignis ausgelöst hat. Dies wird verwendet, da das Click-Ereignis von der 'Ereignis-Blasenbildung' abhängt. – Maxwell

+0

Alert erscheint und sagt undefiniert? – BoxyGILLETT

+0

Wenn die Warnung entfernt wird, wird die Seite beim Senden aktualisiert, tut aber nichts. tut mir leid, nicht gut, wenn es um diese Sprache geht, will nur den Wert von ausgewählt ist, und setzen Sie es oder aktualisieren Sie den versteckten Feldwert, um dann auf der PHP-Seite zu verwenden. – BoxyGILLETT

0

Ok so mit Lasten über eine Zeile Code von Unordnung war, hatte

$(".crimeSelect").click(function() { 
    $("#selec1").val($(this).attr('crimeid')); 
    $(this).css('opacity', 1.00); 
    $('.crimeSelect.isSelected').removeClass('isSelected').css('opacity', 0.40); 
    $(this).addClass('isSelected'); 
    $('input[name=Crime]').val($(this).attr('crimeid')); 

}); 

benennen Sie die HTML-Eingabe holen aus dem PHP zu tun Wert zu überprüfen und erhalten gehen von dort :)

Verwandte Themen