目前出现此错误:
Uncaught TypeError: Cannot read property 'value' of null
我在下面的渲染函数中调用它:
<input type="submit" className="nameInput" id="name" value="cp-dev1" onClick={this.writeData}/>
我也尝试过在这里调用它
componentWillMount: function(){
var name = document.getElementById('name').value;
},
如何获取输入文本字段的 id 并读取该值并确保它不为空?
我认为 DOM 是在我尝试读取元素后加载的,因此为什么它是 null
你需要有你的功能componentDidMount
生命周期,因为这是 DOM 加载时调用的函数。
利用refs
访问 DOM 元素
<input type="submit" className="nameInput" id="name" value="cp-dev1" onClick={this.writeData} ref = "cpDev1"/>
componentDidMount: function(){
var name = React.findDOMNode(this.refs.cpDev1).value;
this.someOtherFunction(name);
}
有关更多信息,请参阅此答案如何在React中访问dom元素 https://stackoverflow.com/questions/38093760/how-to-access-a-dom-element-in-react-what-is-the-equilvalent-of-document-getele/38093981#38093981
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)