Javascript 如何从react元素中的自定义属性中获取值?
下面是我的html看起来像Javascript 如何从react元素中的自定义属性中获取值?,javascript,reactjs,Javascript,Reactjs,下面是我的html看起来像 <select onclick={this.handleClick}> <option key="1" value="aaa" data-plan-id="test"></option> </select> 我的问题是如何从“数据计划id”属性(即“测试”)中获取值?您需要遍历的所有,并检查值是否相同。如果是,请检查是否有数据集。这将有计划id Ps.Javascript将虚线数据属性转换为camelCasep
<select onclick={this.handleClick}>
<option key="1" value="aaa" data-plan-id="test"></option>
</select>
我的问题是如何从“数据计划id”属性(即“测试”)中获取值?您需要遍历
的所有
,并检查值是否相同。如果是,请检查是否有数据集。这将有计划id
Ps.Javascript将虚线数据属性转换为camelCaseplanId->planId
希望这有帮助
类应用程序扩展了React.Component{
构造函数(){
超级()
this.onChange=this.onChange.bind(this)
此.state={
组成部分:“A”
}
}
onChange(e){
[…e.target.childNodes].forEach((el)=>{//将HTML集合转换为数组
如果(el.value==e.target.value)
console.log(el.dataset.planId)
})
这是我的国家({
组成部分:e.target.value
})
}
render(){
返回
A.
B
}
}
ReactDOM.render(,document.getElementById('app'))
只需阅读
选择选项
HTMLCollection并从中选择第一个选项:
console.log(e.target.selectedOptions[0].getAttribute('data-plan-id');
使用现代浏览器(IE11+,请参阅),您可以使用界面而不是getAttribute
:
console.log(e.target.selectedOptions[0].dataset.planId);
很抱歉输入错误,我确实在select标记中放置了onClick事件,我想得到的是数据计划id,非常感谢您的帮助。
console.log(e.target.value); // this will output aaa