Wenn das Kontrollkästchen angeklickt wird, muss der Wert des Kontrollkästchens 1 sein. Wenn das Kontrollkästchen nicht angeklickt wird, muss der Wert 0 sein. Aus irgendeinem Grund scheint der Code nicht gut zu funktionieren.jquery checkbox checked change Wert
// Checkbox values 1/0.
$("#prefForm").submit(function() {
$("input[type=checkbox]").each(function() {
var self = $(this);
if (self.is(":checked")) {
self.val('1');
} else {
self.val('0');
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="select-activity">
<ul>
<li>
<!-- <input type="hidden" name="donate_buskie" value=""> -->
<input type='checkbox' id='checkbox-1' class='pseudo-checkbox sr-only' name="donate_buskie" value="0" />
<label for='checkbox-1' class='glyphicon-check-click fancy-checkbox-label'><span><?php echo JText::_('When someone donates to my Buskie'); ?></span>
</label>
</li>
<li>
<!-- <input type="hidden" name="receives_donation" value=""> -->
<input type='checkbox' id='checkbox-2' class='pseudo-checkbox sr-only' name="receives_donation" value="0" />
<label for='checkbox-2' class='glyphicon-check-click fancy-checkbox-label'><span><?php echo JText::_('When someone receives a donation'); ?></span>
</label>
</li>
<li>
<input type='checkbox' id='checkbox-3' class='pseudo-checkbox sr-only' name="comment_buskie" value="0" />
<label for='checkbox-3' class='glyphicon-check-click fancy-checkbox-label'><span><?php echo JText::_('When someone posts a comment on your Buskie'); ?></span>
</label>
</li>
<li>
<input type='checkbox' id='checkbox-4' class='pseudo-checkbox sr-only' name="comment_reply" value="0" />
<label for='checkbox-4' class='glyphicon-check-click fancy-checkbox-label'><span><?php echo JText::_('When someone replies to my comment'); ?></span>
</label>
</li>
</ul>
Sie Code-Schnipsel funktioniert gut! –
Was ist der Sinn dieses Codes? Es widerspricht dem Standardmuster für die Arbeit mit Kontrollkästchen, wenn das Kontrollkästchen nicht aktiviert ist, wird kein Wert in der Anfrage gesendet. Daher ist der Wert "0", wenn es nicht markiert ist. Wenn Sie wissen möchten, welche Kontrollkästchen aktiviert sind, ist es viel sinnvoller, 'map()' zu verwenden, um ein boolesches Array des aktivierten Status jedes Kontrollkästchens zu erstellen –