2016-06-12 10 views
0

ich diese Einstellung vornehmen:wie chkbox.checked auf false/ungeprüft

console.log(document.getElementsByName('chkDetail')[0].checked) 

in javascript ich:

true 

Und dann habe ich alle diese (und mehr) getan:

document.getElementsByName('chkDetail')[0].setAttribute('checked', false); 

oder

document.getElementById('cd').setAttribute('checked', false); 

oder

document.getElementsByName('chkDetail')[0].removeAttribute('checked'); 

oder

document.getElementById('cd').removeAttribute('checked'); 

und dann, wenn ich das wieder tun:

console.log(document.getElementsByName('chkDetail')[0].checked) 

ich immer noch:

true 

Nichts scheint t o Deaktivieren Sie dieses Kontrollkästchen!

PS Ich habe versucht, mit "false" und "false", die ich in die Boolean zu einer Zeichenfolge zu erzwingen ist nur als richtig bewerten, so habe ich auch versucht "" und "".

Es gibt eine Menge Seiten dort, die ich gewesen bin, die sagen, dass irgendeine dieser Kombinationen und andere funktionieren sollten. Was könnte ich übersehen?

+0

Anstelle von SetAttribute können Sie prop verwenden, die Ihnen die richtige Ausgabe geben wird. –

Antwort

0

Haben Sie versucht:

document.getElementsByName('chkDetail')[0].checked = false; 

prüfen this reference on the checked property des Elements aus. Die Eigenschaft kann direkt gelesen oder geschrieben werden.

Ich bemerkte, dass Sie eine getElementById('cd') haben. Wenn das gewünschte Element einen ID-Wert hat, würde ich empfehlen, das über getElementsByName() zu verwenden. So würde der Anruf werden:

+0

OMG jwatts! Erste Auszeit! Lief wie am Schnürchen. Greifen Sie direkt auf die Immobilie zu! Ich schätze, ich scheue mich wegen des Fehlens von Intellisense vor dieser Methode. Aber sobald ich hinter setAttribute oder removeAttribute gelandet bin und ich bin in dem zitierten Parameter irgendwie, gibt es kein intellisense mehr, um mir mehr Vertrauen zu geben! Das sind gute Nachrichten. Und ich werde tatsächlich mit der App weitermachen. 1. Ich werde jetzt daran denken, öfter die direkte Methode auszuprobieren. Aber 2. Ich werde mich immer fragen, warum all die anderen Wege, die "hätten funktionieren sollen", nicht funktionierten. – liveFor10

+0

@ liveFor10 Wenn dies das erste Mal ist, dass Sie mit einer Skriptsprache arbeiten, dann seien Sie auf eine Menge Versuch und Irrtum vorbereitet. Meine 2 wichtigsten Ratschläge für die Arbeit mit Skriptsprachen: 1) kleine iterative Änderungen vornehmen (dh auf das Ziel Stück für Stück aufbauen, und 2) ein paar wirklich gute Sprachreferenzen finden. Ohne intellisense zu helfen, müssen Sie nur * wissen *, welche Eigenschaften und Methoden verfügbar sind. – jwatts1980

+0

@ liveFor10 Auch, wenn meine Antwort den Trick für Sie getan hat, markieren Sie es bitte als die Antwort, so dass, wenn andere ihren Weg hier finden, sie wissen, was Ihr Codierproblem gelöst hat. Vielen Dank! – jwatts1980