jQuery和复选框,我看不到变化

jQuery and checkboxes, i can't see the changes

本文关键字:看不到 变化 我看 复选框 jQuery      更新时间:2023-09-26

我在ASP项重复器中有许多复选框:

<asp:Repeater ID="rpPostes" runat="server" DataSource="<%# this.ItemsPostesBudgetaires %>">

在中继器的某处,有一个描述为:

的复选框
<asp:CheckBox runat="server" Class="chk" ID="chkPieceJust" Text="Recues" Visible="<%#  Mode.HasFlag(ModeType._BoutonsApprobation)  %>" Enabled="<%# CheckBoxDispo() %>" Checked="<%# CheckBoxChecked(Container.DataItem as Transaction) %>" />

在这一切的最后,一个按钮,应该是把每个复选框为真:

<input id="chkAllPieceJust" type="button" value="Toutes Pièces Justificatives Recues" onclick="CTCC.Transactions.PieceRecuClick(this);" />

最后是jQuery函数

CTCC.Transactions.PieceRecuClick = function (source) {
$('.chk').attr('checked', true);
}

在我点击按钮后发生的是这样的html输出:

<span class="chk" checked="checked"><input ... blablabla

但是什么也没发生,复选框根本没有被选中…

我想不出我还需要什么

Checkbox控件的CssClass属性实际上将类应用于包装复选框本身的span元素。您可以将类直接应用于checkbox元素,方法是在代码后面为其赋值,如下所示:

MyCheckBox.InputAttributes["class"] = "chk";

或者修改您的jquery来查找.chk元素的输入子元素,如下所示

$(".chk input[type='checkbox']").prop('checked', true);