it-swarm.com.de

Testen, ob ein Kontrollkästchen mit jQuery aktiviert ist

Wenn das Kontrollkästchen aktiviert ist, muss ich nur den Wert 1 angeben. Ansonsten muss ich es als 0 erhalten. Wie mache ich das mit jQuery?

$("#ans").val() gibt mir in diesem Fall immer ein Recht:

<input type="checkbox" id="ans" value="1" />
565
Rajeev

Verwenden Sie .is(':checked'), um festzustellen, ob es markiert ist oder nicht, und legen Sie dann Ihren Wert entsprechend fest.

Weitere Informationen hier.

983
Andy Mikula
$("#ans").attr('checked') 

wird Ihnen sagen, ob es markiert ist. Sie können auch einen zweiten Parameter true/false verwenden, um das Kontrollkästchen zu aktivieren/deaktivieren.

$("#ans").attr('checked', true);

Verwenden Sie pro Kommentar prop anstelle von attr, sofern verfügbar. Z.B:

$("#ans").prop('checked')
206
xaxxon

Verwenden Sie einfach $(selector).is(':checked') 

Es gibt einen booleschen Wert zurück. 

88
SimionBaws
// use ternary operators
$("#ans").is(':checked') ? 1 : 0;
54

Die Antwort von Stefan Brinkmann ist hervorragend, aber für Anfänger unvollständig (lässt die variable Zuordnung zu). Nur um klarzustellen:

// this structure is called a ternary operator
var cbAns = ( $("#ans").is(':checked') ) ? 1 : 0;

Es funktioniert so:

 var myVar = ( if test goes here ) ? 'ans if yes' : 'ans if no' ;

Beispiel:

var myMath = ( 1 > 2 ) ? 'yes' : 'no' ;
alert( myMath );

Warnmeldungen "Nein"

Wenn dies hilfreich ist, stelle bitte die Antwort von Stefan Brinkmann zur Kenntnis.

20
crashwap

Sie können dies versuchen:

$('#studentTypeCheck').is(":checked");
17
MAnoj Sarnaik

Ich habe das gleiche Problem schon einmal gefunden. Ich hoffe, diese Lösung kann Ihnen helfen. Zuerst fügen Sie Ihren Checkboxen ein benutzerdefiniertes Attribut hinzu:

<input type="checkbox" id="ans" value="1" data-unchecked="0" />

schreiben Sie eine jQuery-Erweiterung, um Werte zu erhalten:

$.fn.realVal = function(){
    var $obj = $(this);
    var val = $obj.val();
    var type = $obj.attr('type');
    if (type && type==='checkbox') {
        var un_val = $obj.attr('data-unchecked');
        if (typeof un_val==='undefined') un_val = '';
        return $obj.prop('checked') ? val : un_val;
    } else {
        return val;
    }
};

verwenden Sie Code, um den Wert des Kontrollkästchens abzurufen:

$('#ans').realVal();

sie können hier testen

15
alphakevin
$('input:checkbox:checked').val();        // get the value from a checked checkbox
7
nobody

Sie können auch verwenden:

$("#ans:checked").length == 1;
6
<input type="checkbox" id="ans" value="1" />

Jquery: var test= $("#ans").is(':checked') Und es wird wahr oder falsch zurückgegeben.

In deiner Funktion:

$test =($request->get ( 'test' )== "true")? '1' : '0';
6
Rajesh RK

Es gibt verschiedene Möglichkeiten wie dort ....

 1. $("#ans").is(':checked') 
 2. $("#ans:checked")
 3. $('input:checkbox:checked'); 

Wenn alle diese Optionen true zurückgeben, können Sie den Wert zufällig einstellen.

4
Amit Maru
function chkb(bool){
if(bool)
return 1;
return 0;
}

var statusNum=chkb($("#ans").is(':checked'));

statusNum entspricht 1, wenn das Kontrollkästchen aktiviert ist, und 0, wenn dies nicht der Fall ist.

BEARBEITEN: Sie können auch das DOM zur Funktion hinzufügen.

function chkb(el){
if(el.is(':checked'))
return 1;
return 0;
}

var statusNum=chkb($("#ans"));
4
kmoney12

Benutzen:

$("#ans option:selected").val()

Ich bin vor kurzem durch einen Fall gekommen, in dem ich einen Check-Wert für das Kontrollkästchen benötigte, wenn der Benutzer auf die Schaltfläche klickte. Der einzig richtige Weg ist, das prop()-Attribut zu verwenden.

var ansValue = $("#ans").prop('checked') ? $("#ans").val() : 0;

das hat in meinem Fall funktioniert, vielleicht wird es jemand brauchen. 

Wenn ich .attr(':checked') ausprobiert habe, wurde checked zurückgegeben, aber ich wollte einen booleschen Wert und .val() den Wert des Attributs value.

3
Robert

Versuche dies

$('input:checkbox:checked').click(function(){
    var val=(this).val(); // it will get value from checked checkbox;
})

Hier ist das Flag wahr, wenn es aktiviert ist

var flag=$('#ans').attr('checked');

Wieder wird dies cheked machen 

$('#ans').attr('checked',true);
2
sharif2008

Sie können Wert (wahr/falsch) durch diese beiden Methoden erhalten

$("input[type='checkbox']").prop("checked");
$("input[type='checkbox']").is(":checked");
0
PPB

Überprüfen Sie zunächst, ob der Wert geprüft ist

$("#ans").find("checkbox").each(function(){
    if ($(this).prop('checked')==true){ 
    var id = $(this).val()
    }
});

Andernfalls setzen Sie den 0 -Wert

0
Ashok Charu

Wenn Sie einen ganzzahligen Wert von "checked" oder nicht möchten, versuchen Sie Folgendes:

$("#ans:checked").length
0
Nasaralla

Sie können es auf folgende Weise durchführen:

$('input[id=ans]').is(':checked');     
0
swathi
 $("#id").prop('checked') === true ? 1 : 0;
0
Paulo Rodrigues