Frage

Ich habe ein jQuery-Skript, das bestimmte divs angezeigt werden je nachdem, welche Option wählen ausgewählt wurde.

Hier ist der Code für das:

jQuery.noConflict();
jQuery(document).ready(function() {
  jQuery.viewMap = {
    '' : jQuery([]),
    '1' : jQuery('.company_1'),
    '2' : jQuery('.company_2')
  };
  jQuery('#companyid').change(function() {
    jQuery.each(jQuery.viewMap, function() { this.hide(); });
    jQuery.viewMap[jQuery(this).val()].show();
  });
});

(Beispiel div)

<div class="company_1" style="display: none;">
  <input type="checkbox" name="classifications[Miner]" id="classifications[Miner]" /> Spec/Rough
  <input type="checkbox" name="classifications[Dealer]" id="classifications[Dealer]" /> Dealer
</div>

Ich möchte es innerhalb des div (.company_1, .company_2 usw.) alle Kontrollkästchen deaktivieren, wenn jemand eine andere Option auswählt. Wenn das Sinn macht? :)

Danke!

War es hilfreich?

Lösung

ein Kontrollkästchen Deaktivieren wird durch Entfernen des Attributs mit dem Namen erreicht „geprüft“. Versuchen Sie:

jQuery.each(jQuery.viewMap, function() {
    this.hide();
    jQuery('input:checkbox', this).removeAttr('checked');
});

Andere Tipps

@ David Andres Dank für mich in der richtigen Richtung zeigen könnte ich nicht, Ihren Code zu arbeiten, sondern verwendet:

$("div.company_1 input:checked").removeAttr("checked");

die Arbeit getan hat.

Wie wäre:

$("div.company_1 input[type:checkbox]").removeAttr("checked");
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top