Hola, estoy tratando de usar esta función checkAll.
Si hago clic en la casilla de verificación marcar todo, se seleccionará toda la fila y el color de fondo cambiará en consecuencia.
Aquí está mi javascript:
function checkAll(objRef) { var GridView = objRef.parentNode.parentNode.parentNode; var inputList = GridView.getElementsByTagName("input"); for (var i = 0; i < inputList.length; i++) { var row = inputList[i].parentNode.parentNode; if (inputList[i].type == "checkbox" && objRef != inputList[i]) { if (objRef.checked) { row.style.backgroundColor = "aqua"; inputList[i].checked = true; } else { if (row.rowIndex % 2 == 0) { row.style.backgroundColor = "#e4edfb"; } else { row.style.backgroundColor = "white"; } inputList[i].checked = false; } } } }Este es mi código:
<asp:TemplateField> <HeaderTemplate> <asp:CheckBox ID="checkAll" runat="server" onclick="checkAll(this);" /> </HeaderTemplate> <ItemStyle HorizontalAlign="Center" /> <ItemTemplate> <asp:HiddenField ID="hidID" runat="server" Value='<%# Eval("Id") %>' /> <asp:CheckBox runat="server" ID="chkBoxMultipleSelect" CssClass="chkBoxMultipleSelect" OnClick="checkIfUnselected(this);" /> </ItemTemplate> </asp:TemplateField>Después de hacer clic en la casilla de verificación checkAll, solo puedo cambiar el color de esa columna de la casilla de verificación, pero no de mi otra columna.
Cualquier ayuda se aparece. Gracias.
function checkAll(spanChk) { var IsChecked = spanChk.checked; var Chk = spanChk; Parent = document.getElementById('gvMessageReportShow'); var items = Parent.getElementsByTagName('input'); for (i = 0; i < items.length; i++) { if (items[i].id != Chk && items[i].type == "checkbox") { if (items[i].checked != IsChecked) { spanChk.parentElement.parentElement.style.backgroundColor = 'aqua'; items[i].click(); } } } }Terminé encontrando mi respuesta aquí.