2017-05-03 4 views
2

Ich bin ziemlich neu zu jquery/javascript und bin mit einem Radiobutton zu kämpfen. Ich möchte, dass der Optionsschalter abhängig von einer Variablen aus der Datenbank überprüft wird. Ich kann den Wert in meiner Konsole sehen, also ist er dynamisch gefüllt, aber ich kann nicht die richtige Optionsschaltfläche haben.Überprüfen Radio-Button in Abhängigkeit von Variablenwert

Das ist mein jquery:

$(document).ready(function() { 
     //if ($('input[name="Gender"] option[value="%%Gender%%"]')) 
     // $('input[name="Gender"] option[value="%%Gender%%"]').prop("checked", true); 
     if($('input[name="Gender"][value="%%Gender%%"]')) 
     ($('input[name="Gender"][value="%%Gender%%"]').prop("checked",true)) 
     console.log("%%Gender%%"); 
     }); 

Das ist mein Tisch ist (ich weiß, es ist nicht der richtige Weg ist, zu arbeiten, aber die HTML erzeugt wird, und ich habe es zu benutzen), einschließlich der Radiobuttons:

<table cellspacing="0" cellpadding="0" border="0"> 
    <tr style="height: 20px"> 
     <td> 
     <input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_0" label="Gender" value="%%Gender%%"> 
     </td> 
     <td class="defaultText" style="padding-right: 10px;">Male</td> 
    </tr> 
    <tr style="height: 20px"> 
     <td> 
     <input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_1" label="Gender" value="%%Gender%%"> 
     </td> 
     <td class="defaultText" style="padding-right: 10px;">Female</td> 
    </tr> 
    </table> 

Vielen Dank im Voraus für jede Hilfe!

GRTS

Antwort

1

haben Sie versucht, so etwas wie:

$('input[name="Gender"]').each(function(index){ 
    if($(this).val() == "%%Gender%%") 
    ($(this).prop("checked",true)); 
}); 
+0

Dank @techLove! Scheint, wie ein Charme zu arbeiten. –

1

Ihre if-Anweisung fehlt geschweiften Klammern angezeigt zu werden.

Beide Funkeingänge haben den gleichen Wert, daher wird der spätere überprüft.

$(document).ready(function() { 
 
    $('input[name="Gender"]').each(function() { 
 
    if($(this).val() == '%%Gender%%') { 
 
     $(this).trigger('click'); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table cellspacing="0" cellpadding="0" border="0"> 
 
    <tr style="height: 20px"> 
 
     <td> 
 
     <input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_0" label="Gender" value="%%Gender%%"> 
 
     </td> 
 
     <td class="defaultText" style="padding-right: 10px;">Male</td> 
 
    </tr> 
 
    <tr style="height: 20px"> 
 
     <td> 
 
     <input type="radio" style="margin: 0px 4px 0px 0px; width: 13px;" name="Gender" id="control_COLUMN10_1" label="Gender" value="%%Gender%%"> 
 
     </td> 
 
     <td class="defaultText" style="padding-right: 10px;">Female</td> 
 
    </tr> 
 
    </table>

Verwandte Themen