【问题标题】:jQuery - if the checkbox is checked, stop uncheckedjQuery - 如果复选框被选中,停止未选中
【发布时间】:2011-09-19 10:48:01
【问题描述】:

我正在解决以下情况 - 我在数据库数据表中有这些数据,我在 HTML 页面中选中或未选中复选框。

我想知道程序,怎么做,如果我选中了复选框,那么如何禁用用户未选中此复选框..

存在某种方式,怎么办?

非常感谢, M.

【问题讨论】:

  • 一旦选中复选框,在渲染之前或在 document.ready() 上时,将其设为只读。
  • @Furqan:readonly 属性不能与复选框输入一起使用。

标签: jquery html checkbox checked


【解决方案1】:

只需使用 HTML:

<input type="checkbox" checked disabled>

请注意,HTML 中的 readonly 属性不能与复选框输入一起使用。

【讨论】:

    【解决方案2】:

    选中复选框后,复选框应用属性已禁用。

    .attr('disabled', true);
    

    【讨论】:

    • 谢谢,但还有一个问题-如果我要使用它,那么我选中的复选框将显示为灰色(如“已禁用”)-存在某种禁用复选框并具有“活动”的方法" 复选框的颜色?
    • @user705586 我认为您不应该将其设为活动状态。否则用户会尝试点击它。
    【解决方案3】:

    $(checkbox).attr('readonly', true); 其中“复选框”是合适的 jQuery 选择器,不要按字面意思使用此代码

    【讨论】:

    • readonly 属性不能与复选框输入一起使用。
    【解决方案4】:

    如果您的意思是要禁用选中的复选框,可以使用disabled 属性:

    &lt;input type="checkbox" disabled="disabled" /&gt;

    如果您想在单击复选框时禁用它,使用 jQuery,您可以这样做:

    $("input[type=checkbox]").click(function() {
          $(this).attr("disabled", true);
    });
    

    【讨论】:

    • 如果你真的想用 jQuery 的方式来做,至少使用$(this).prop("disabled", true)。但是,您可能应该改用 this.disabled = true; — 更短且更快。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-11
    • 2011-01-16
    • 1970-01-01
    • 2013-01-23
    • 2013-02-10
    • 1970-01-01
    • 2012-06-29
    相关资源
    最近更新 更多