这是我的输入元素,具有键和类别名称属性
<input
className="is-checkradio is-circle"
id={item.CategoryID}
key={item.CategoryID}
categoryname={this.props.node.CategoryName}
type="radio" name="categoryCheckBox"
onClick={this.UpdateCategory}
/>
我想在onClick
事件UpdateCategory
UpdateCategory({ target }) {
console.log(target);
console.log(target.categoryname);
this.props.UpdateManualCategory(target.id, target.categoryname);
}
但是类别名称中的值未定义并且不确定为什么不显示键
答案 0 :(得分:2)
任何不是元素上预定义属性的属性都不能直接从target
获得。而且虽然id
是输入的预定义属性,但categoryname
不是输入的
要访问它们,您需要使用getAttribute
方法
UpdateCategory({ target }) {
this.props.UpdateManualCategory(target.id, target.getAttribute('categoryname'));
}
答案 1 :(得分:0)
尝试使用此
UpdateCategory(e) {
e.persist();
const target=e.target;
console.log(target);
const category=target.getAttribute('categoryname')
console.log(category);
this.props.UpdateManualCategory(target.id,category);
}
答案 2 :(得分:0)
您可以这样考虑:
const {node, UpdateManualCategory} = this.props
...
<input
className="is-checkradio is-circle"
key={item.CategoryID}
type="radio" name="categoryCheckBox"
onClick{()=> UpdateManualCategory(item.CategoryID, node.CategoryName)}}
/>
答案 3 :(得分:0)