当前位置: 首页 > 知识库问答 >
问题:

更改类以检查复选框

蔡鹏程
2023-03-14

我有一个模态表单,它填充了来自我的数据库在PageLoad上的数据。

我知道它会被选中,尽管在第一次单击复选框时,它似乎什么也没做,仍然看起来没有被选中,然后在第二次单击时,它会选中复选框。

在单击复选框前后检查页面时,我注意到icheckbox_minimal&aria-checked=“false”也需要更改,以使选中的gfx看起来是选中的。如何使用JavaScript更改这些内容?

<span type="checkbox" class="" name="cbxScheduleEditTue"><div class="icheckbox_minimal" aria-checked="false" aria-disabled="false" style="position: relative;"><input id="ContentPlaceHolder2_cbxScheduleEditTue" type="checkbox" name="ctl00$ContentPlaceHolder2$cbxScheduleEditTue" style="position: absolute; top: -20%; left: -20%; display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; border: 0px; opacity: 0; background: rgb(255, 255, 255);"><ins class="iCheck-helper" style="position: absolute; top: -20%; left: -20%; display: block; width: 140%; height: 140%; margin: 0px; padding: 0px; border: 0px; opacity: 0; background: rgb(255, 255, 255);"></ins></div></span>

知道我正在使用以下内容可能会有所帮助:

<script src="js/bootstrap.min.js"></script>
<script src="js/icheck.js"></script>
<!-- Function - modalEditSchedule -->
<script type="text/javascript">
    function modalEditSchedule(ScheduleRatesID, tempStartDate, tempEndDate, start, endtime, mon, tue, wed, thu, fri, sat, sun, CarersReq) {
        document.getElementById('<%=sidInput.ClientID%>').value = ScheduleRatesID;
        document.getElementById('<%=txtScheduleEditStartDate.ClientID%>').value = tempStartDate;
        document.getElementById('<%=txtScheduleEditEndDate.ClientID%>').value = tempEndDate;
        document.getElementById('<%=txtScheduleEditStartTime.ClientID%>').value = start;
        document.getElementById('<%=txtScheduleEditEndTime.ClientID%>').value = endtime;
        if (mon == 'Yes') {
            document.getElementById('<%=cbxScheduleEditMon.ClientID%>').checked = true;
        }
        if (tue == 'Yes') {
            document.getElementById('<%=cbxScheduleEditTue.ClientID%>').checked = true;
        }
        if (wed == 'Yes') {
            document.getElementById('<%=cbxScheduleEditWed.ClientID%>').checked = true;
        }
        if (thu == 'Yes') {
            document.getElementById('<%=cbxScheduleEditThu.ClientID%>').checked = true;
        }
        if (fri == 'Yes') {
            document.getElementById('<%=cbxScheduleEditFri.ClientID%>').checked = true;
        }
        if (sat == 'Yes') {
            document.getElementById('<%=cbxScheduleEditSat.ClientID%>').checked = true;
        }
        if (sun == 'Yes') {
            document.getElementById('<%=cbxScheduleEditSun.ClientID%>').checked = true;
        }
        document.getElementById('<%=ddlScheduleEditCarersReq.ClientID%>').value = CarersReq;
    };
</script>

共有1个答案

商俊智
2023-03-14

Icheck实用程序(js/Icheck.js)正在劫持和包装您的复选框,这就是为什么您的方法会被Icheck行为所覆盖。了解一下。

// try replacing this calls: 
document.getElementById('<%=cbxScheduleEditSun.ClientID%>').checked = true;

// by this ones (dont forget to add the '#' at the beggining):
$('#<%=cbxScheduleEditSun.ClientID%>').iCheck('check');

或者,作为补充,您可以使用纯jQuery,阅读以下答案。

 类似资料:
  • 问题内容: 我正在尝试使用CSS更改复选框的默认“框图像”,但是它不起作用。有没有办法解决? 问题答案: 尝试: jQuery

  • 在我的项目,我想改变src部分(AR-Button的src)相关的单选按钮检查。 例如:当你勾选“选项1”时,我想改变AR按钮上的src部件。与选中Option3x(选中option1和option1x)相比,我想再次更改src。 我的意思是,对于所有64个检查组合,我要更改SRC。 任何帮助或建议将是伟大的! 谢谢.. null null

  • 问题内容: 如何检查是否使用复选框数组的ID选中了复选框数组中的复选框? 我正在使用以下代码,但无论ID为何,它始终返回已选中复选框的数量。 问题答案: ID在您的文档中必须是唯一的,这意味着您 不应该这样 做: 而是放下ID,然后按名称或包含元素选择它们: 现在是jQuery:

  • 我有一个RecyclerView,它有一个复选框和文本视图。数字10,20,30,40。。。文本视图中应显示至500。选中的复选框应在文本视图中添加与复选框对应的数字。例如,如果用户仅检查值10,textView将显示10。如果用户同时选中20,则TextView将显示30(20 10)。如果用户再次取消选中10,TextView将显示20,依此类推。当我点击复选框时,一些随机复选框也被选中。我在

  • 变化检测器的目标是知道从上一次变化检测过程运行以来,组件的模板中使用的哪些模型属性已经改变。 为了知道,Angular创建了一个适当的变化检测器类的实例和一个链接到它应该检查的组件。 在我们的示例中,因为我们只有一个和MovieComponent的实例,我们将只有一个MainComponent_ChangeDetector和MovieComponent_ChangeDetector的实例。 下面的

  • 我想存储一个值的选择的选项,并改变它每次当用户将改变他的想法。我使用了类似$('#selections').val(),但首先,我收到未定义的值,当选择某个选项时,什么也不会发生。