【问题标题】:Set Checkbox to Checked with JavaScript after page Load页面加载后将复选框设置为使用 JavaScript 选中
【发布时间】:2019-09-06 08:44:02
【问题描述】:

在页面加载后尝试将页面上的此复选框元素设置为选中时遇到了一个小挑战:

<input type="checkbox" id="1403317">

挑战:
1. 这个<input> 只能通过它的id 调用,因为没有设置name 属性。
2. 执行此操作的 JS 代码不能放在 <head></head> 标记内 - 我无法访问此用例中的那部分代码,因此这必须在 <body></body> 的某个地方工作。

到目前为止,这是我尝试执行此操作的方法(在结束 </body> 标记之前),但没有任何效果。我的语法有问题吗?

<script type="text/javascript">
    window.onload = function() {
    document.getElementById("1403317").checked = true;
    }
</script>

【问题讨论】:

  • 试试这个document.getElementById("1403317").checked = "checked";
  • 似乎工作正常:jsfiddle.net/13gbuw24。如果您使用的是 HTML4,但命名可能会出现问题,因为 ID 必须以字母开头 (w3.org/TR/html4/types.html#type-id)
  • 我认为我的原始代码很好,下面@will-hamic 的建议也是如此(所以我将其标记为正确答案) - 但我相信这部分还有其他内容我无权访问的网络应用程序代码取代了这个功能 - 所以最后我无法让它工作:(
  • 由于您的脚本位于正文的底部,您应该可以省略onload 并直接运行它。这应该消除与替换您的处理程序的其他代码的任何冲突。

标签: javascript html checkbox listener onload


【解决方案1】:

这应该可以满足您的需求。它在 sn-p 中正常工作。

window.onload = onPageLoad();

function onPageLoad() {
  document.getElementById("1403317").checked = true;
}
&lt;input type="checkbox" id="1403317"&gt;

【讨论】:

    【解决方案2】:

    试试这个吧?

    $(document).ready(function() { 
        $('#1403317').attr('checked', true)
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-12
      • 1970-01-01
      • 1970-01-01
      • 2016-06-19
      • 2013-02-07
      • 1970-01-01
      • 1970-01-01
      • 2019-01-08
      相关资源
      最近更新 更多