【问题标题】:How to set attribute in jquery after dom ready?dom准备好后如何在jquery中设置属性?
【发布时间】:2026-01-22 01:55:01
【问题描述】:

我想在 dom 准备好后勾选 jquery 中的复选框。 我将仪表板模板用于响应式用户界面。

$(document).ready(function () {
   $("#genderF").attr("checked",true);
});

这里是html代码

<div class="col-md-6 col-sm-6 col-xs-12" style="padding-top: 8px;">
 M:
 <input type="radio" class="flat" name="gender" id="genderM" value="M" checked="" required /> F:
 <input type="radio" class="flat" name="gender" id="genderF" value="F" />
</div>

但是效果不好。 我必须在静态 html 文件中选中复选框。 以及如何更改 jquery 中的选中状态? 正如我之前提到的,我使用仪表板模板来实现 ui 效果,并且他们为复选框制作了更多元素,所以即使我可以将属性设置为复选框,它也不能像我预期的那样工作。 我使用了 Gentelella 仪表板模板。 colorlib.com/polygon/gentelella/form.html 在这里我使用了复选框并想在 jquery 中更改状态。如果有人帮助我,我会很高兴

【问题讨论】:

  • 使用.prop() 而不是.attr()
  • 请显示 HTML。如果您有&lt;input type="checkbox" id="genderM"&gt;,上述内容将起作用(尽管它依赖于attr 为您做一些特殊处理)。
  • @j08691:他们应该原则上,但这不会有任何区别。 attrchecked(和 disabledselected)有特殊处理(即使在 v3.x 中)。
  • @WhiteSnow T.J.是的,我的评论只是对现在通常使用的内容的注释,但是您需要创建一个minimal reproducible example 以便我们可以重现该问题。
  • 在这里工作正常jsfiddle.net/j08691/k3gtx4ky

标签: jquery checkbox


【解决方案1】:

$("#x").prop("checked", true);

【讨论】:

  • 虽然他们应该在一般原则上使用prop,但他们不必这样做,即使使用 jQuery 3.x; attrchecked(和 selecteddisabled)有特殊情况处理。这不是问题所在。