[英]How to set an onclick function in innerHTML in react?
I wanna call a function inside innerHTML in react我想在innerHTML中调用一个function来响应
my Code is -我的代码是 -
changeLength() {
console.log("tested Anurag")
this.refs.changemanager.innerHTML = "<span>" +
this.state.user.manager.fullname + "</span> <a style={{ cursor: 'pointer' }} onClick={" + this.changeLength12.bind(this) + "}>...</a>";
}
changeLength12() {
console.log("tested Anurag1")
this.refs.changemanager.innerHTML = "<span>" +
this.state.user.manager.fullname.substring(0, 3) + "</span> <a style={{ cursor: 'pointer' }} onClick={this.changeLength.bind(this)}>...</a>";
}
my changeLength function is working fine but changeLength12 is not working.我的 changeLength function 工作正常,但 changeLength12 不工作。 So how to make it working?那么如何让它工作呢?
You can try instead something like:您可以尝试类似的方法:
import React, { Component } from "react";
import ReactDOM from "react-dom";
import "./styles.css";
class App extends Component {
constructor(props) {
super(props);
this.state = {
fullName: "Stackoverflow user"
};
}
changeLength12() {
console.log(" called from length 12");
}
changeLength() {
console.log(" called from changelength");
}
render() {
return (
<div className="App">
<h1>Hello CodeSandbox</h1>
<span>{this.state.fullName}</span>
<a
href="/"
style={{ cursor: "pointer" }}
onClick={this.changeLength12.bind(this)}
>
...
</a>
<span>{this.state.fullName.substring(0, 3)}</span>
<a
href="/"
style={{ cursor: "pointer" }}
onClick={this.changeLength.bind(this)}
>
...
</a>
</div>
);
}
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.