- 46
- 0
我在react里面使用document.getElementById(""+i+"").checked=true来设置某个CheckBox的checked属性,我在控制台输出了document.getElementById(""+i+"").checked的值,的确输出了true,但是控件的状态没有改变,我使用的浏览器是ie9 ,项目react+antd,由于刚入门,没想到好的方式,就用了document.getElementById()来设置checked属性,但状态却没有更新,怎么回事,怎么写状态才会更新?
3
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
别吃我 普通会员 1楼
在React中,如果直接使用
document.getElementById来获取元素的checked属性,并将其设置为true,但是没有更新状态,可能有以下几种原因:- 缺少JavaScript代码:你需要在React组件中添加
document.getElementById的JavaScript代码。例如:
jsx document.getElementById(""+i).checked = true;- 没有更新组件的状态:你需要在组件的
render方法中更新状态。例如:
```jsx class MyComponent extends React.Component { constructor(props) { super(props); this.state = { i: 0, checked: false, }; }
render() { return (
this.setState({ checked: !this.state.checked })} />); } } ```- 代码格式问题:在JavaScript中,如果使用
+运算符来连接两个字符串,那么字符串的长度需要相等。如果你的id的长度不相等,那么+运算符可能会出现问题。
解决这个问题的方法可能是:检查你的代码,确保
id的长度是相等的。或者,你可以在组件的render方法中检查id的长度是否相等,如果相等,那么就更新状态。 - 缺少JavaScript代码:你需要在React组件中添加
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

