如何让textarea中输入多行的数据在p标签中换行?
发布时间:2020-12-15 06:41:19 所属栏目:百科 来源:网络整理
导读:我们在用React开发Web项目的过程中,有的时候,我们需要把textarea中输入的多行字符串,在其他的标签中输出来,比如p标签。但是,往往这个时候,在p标签中输出的内容其默认情况下是不换行的。比如下面的代码: import React,{Component} from 'react' ;expor
我们在用React开发Web项目的过程中,有的时候,我们需要把textarea中输入的多行字符串,在其他的标签中输出来,比如p标签。但是,往往这个时候,在p标签中输出的内容其默认情况下是不换行的。比如下面的代码: import React,{Component} from 'react';
export default class HelloWorld extends Component{
constructor(){
super(...arguments);
this.state={
note:"",}
}
render(){
return(
<div className="app" style={{padding:"10px 5px 15px 20px"}}>
<form id="noter-save-form" method="POST" style={{topPadding:"100px",leftPadding:"100px"}}>
<textarea id="noter-text-area" style={{height:"100px"}} name="textarea" onChange={(e)=> this.setState({note:e.target.value}) } ></textarea>
<hr/>
<label>The input value for Note:</label>
<hr/>
<p>{this.state.note}</p>
<hr/>
</form>
</div>
);
}
}
下面是其渲染的结果: 我们可以看出,其在TextArea中输入的回车换行,在p标签中,压根显示不出来。 import React,leftPadding:"100px"}}>
<textarea id="noter-text-area" style={{height:"100px"}} name="textarea" onChange={(e)=> this.setState({note:e.target.value}) } ></textarea>
<hr/>
<label>The input value for Note:</label>
<hr/>
<p>
{this.state.note.split('n').map(function(item) {
return (
<span>
{item}
<br/>
</span>
)
})} </p>
<hr/>
</form>
</div>
);
}
}
从上面的代码可以看出,我们在p标签中渲染的时候,把textarea中输入的n {this.state.note.split('n').map(function(item) {
return (
<span> {item} <br/> </span> ) })}
换完后,UI渲染的效果如下: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |