登陆

react如何在 dangerouslySetInnerHTML里面插入方法

createMarkup() {
        var row = this.props.row;
        if (row) {
            var html='<thead> <tr><th>名称</th><th>值</th></tr></thead><tbody>';
            for(var item in row){
                html+='<tr><td>'+item+'</td><td><input type="text" id='+item+' value='+row[item]+' onchange={this.handleChange}> </td></tr>';
            }
            html+='</tbody></Table>';
            return {__html:html};
        }

    },
handleChange(e) {
        const value = e.target.getAttribute('id');
        const object = {};
        object[value] = e.target.value;
        this.setState(object,function () {
            console.log(this.state)
        });
    },
render(){
<Table striped bordered condensed hover dangerous


lySetInnerHTML={this.createMarkup()}/>
}
我想在dangerouslySetInnerHTML的字符串里面的input调用handleChange方法,该如何写


# JavaScript
高洛峰高洛峰1822 天前388 次浏览

全部回复(1)我要回复

  • 三叔

    三叔2016-11-17 14:56:09

    可以把createMarkup里的内容写成一个组件啊,你的这个场景是不应该用dangerouslySetInnerHTML的

    回复
    0
  • 取消回复发送