1,$("input[id^="checkbox"]").click(function()
cosa è il id^="checkbox"
senso?
2,
var checkall = $("#checkall");
var boxes = $("input[type="checkbox"]").not(checkall);
checkall.click(function () {
boxes.attr("checked", this.checked);
});
boxes.change(function() {
checkall[0].checked = this.checked && boxes.filter(":checked").length === boxes.length;
});
un, var boxes = $("input[type="checkbox"]").not(checkall);
questa linea significa "dare tutto" type=checkbox
l'input alle scatole si aspetta il id=checkall"
che significato hanno queste righe? checkall[0].checked = this.checked && boxes.filter(":checked").length === boxes.length
; e potrei cambiare questo boxes.attr("checked", this.checked)
; a boxes.attr("checked", checked);
grazie
risposte:
2 per risposta № 1tutti
input
elementi che hanno ID che iniziano con lettere "checkbox" come id = checkbox, id = checkbox1, id = checkboxABC etcvar boxes = $("input[type="checkbox"]").not(checkall);
significa ottenere tutti gli elementi di input di tipo checkbox tranne quello con id = checkallcheckall[0].checked = this.checked && boxes.filter(":checked").length === boxes.length;
imposta $ ("# checkall") "seleziona la proprietà su true se tutte le caselle di controllo sono nellaboxes
è controllato Questo viene fatto controllando se il numero totale di caselle di controllo selezionate è uguale al numero totale di checkbox. La prima partethis.checked
non è richiesto ma non fa male Se l'elemento corrente è deselezionato questa prima parte impedirà l'esecuzione della seconda parte e imposterà lo stato su falso, che è quello che vuoi.No, non puoi cambiare
boxes.attr("checked", this.checked)
aboxes.attr("checked", checked)
. Potresti averlo provato tu stesso.
se qualcuno si sta chiedendo come ho risposto a questi, stavo aiutando l'OP a risolvere Questo domanda di ieri e so cosa OP stava chiedendo.