javascript - ASP :checkbox color change when checked or unchecked

标签 javascript jquery css asp.net

我在 GridView 中有一个复选框,我想在未选中时将其颜色更改为红色,在选中时更改为绿色

我该怎么做?

<ItemTemplate>
   <asp:CheckBox ID="checkboxAttendanceStatus" BackColor="Red" runat="server" AutoPostBack="true" />
</ItemTemplate>

最佳答案

您可以为复选框设置 OnCheckChanged 服务器端事件,如下面的标记所示。然后,您只需在服务器端事件中编写代码来更改 BackColor

标记

<ItemTemplate>
   <asp:CheckBox ID="checkboxAttendanceStatus" BackColor="Red" runat="server"
        AutoPostBack="true" OnCheckedChanged="checkboxAttendanceStatus_CheckedChanged"/>
</ItemTemplate>

服务器端事件的 C# 代码

protected void checkboxAttendanceStatus_CheckedChanged(object sender, EventArgs e)
{
    CheckBox chk = sender as CheckBox;
    if (chk.Checked)
    {
        chk.BackColor = System.Drawing.Color.Green;
    } else
    {
        chk.BackColor = System.Drawing.Color.Red;
    }
}

另一种使用客户端代码而不使用任何 C# 的方法

如果您想在客户端完全实现此要求,则可以将以下 JavaScript 添加到您的 aspx 页面。

您无需订阅复选框的 CheckChanged 事件,也无需编写任何 C# 代码。这种方法只需要 JavaScript/jQuery 代码。

<script type="text/javascript">
function pageLoad() {

    var checkboxes = $("[id*='checkboxAttendanceStatus']");

    checkboxes.each(function (i) {
        if (this.checked) {
            $(this).parent().css("background-color", "green");
        } else {
            $(this).parent().css("background-color", "red");
        }
    });
}
</script>

关于javascript - ASP :checkbox color change when checked or unchecked,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48370168/

相关文章:

php - IE 的 Wordpress 标题和子菜单样式受挫

javascript - 如何获取 JXA 对象的实际类

javascript - 在 ajax post 后从 IE 重定向到另一个页面时出现问题(内部描述)

jquery - 仅显示部分 div

css - 无法弄清楚为什么导航栏不起作用

javascript - 我可以在 Javascript 中比较两种 RGB 颜色吗?如何?

jquery验证,使字段有条件必需?

javascript - 使用 jQuery load() 和 pushState() 模拟帧

html - 如何使下面的用户界面完全响应

javascript - 使用 fancybox 创建一个 blob 图片库