|
@@ -168,12 +168,23 @@ class ChronicInfo extends React.Component{
|
|
const {addAssessItem} = this.props;
|
|
const {addAssessItem} = this.props;
|
|
addAssessItem(v,pIndex,i);
|
|
addAssessItem(v,pIndex,i);
|
|
}
|
|
}
|
|
|
|
+ handleReg(e){ //只能输入数字
|
|
|
|
+ const hasDot = e.target.value.indexOf('.')!=-1;
|
|
|
|
+ const key = e.key;
|
|
|
|
+ if(key!='Backspace'&&((/[^\d]/.test(key)&&key!='.')||(key=='.'&&(hasDot||!e.target.value)))){
|
|
|
|
+ e.preventDefault();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
handleInputformula(id,calcuContent,i,e) {
|
|
handleInputformula(id,calcuContent,i,e) {
|
|
const {calcuValues} = this.state;
|
|
const {calcuValues} = this.state;
|
|
let obj = deepClone(calcuValues);
|
|
let obj = deepClone(calcuValues);
|
|
let values = (obj&&obj[id])||deepClone(calcuContent);
|
|
let values = (obj&&obj[id])||deepClone(calcuContent);
|
|
- values[i].value = e.target.value;
|
|
|
|
|
|
+ const txt = e.target.value;
|
|
|
|
+ values[i].value = txt.replace(/[\u4e00-\u9fa5]|[^\d|.]/g,''); //处理中文输入法的情况
|
|
obj[id] = values;
|
|
obj[id] = values;
|
|
|
|
+ if(/[\u4e00-\u9fa5]|[^\d|.]/g.test(txt)){
|
|
|
|
+ e.target.value = txt.replace(/[\u4e00-\u9fa5]|[^\d|.]/g,'');
|
|
|
|
+ }
|
|
this.setState({
|
|
this.setState({
|
|
isCalculated:false,
|
|
isCalculated:false,
|
|
calcuValues:obj
|
|
calcuValues:obj
|
|
@@ -359,7 +370,7 @@ class ChronicInfo extends React.Component{
|
|
<span>{'请输入'+item.name+':'}</span>
|
|
<span>{'请输入'+item.name+':'}</span>
|
|
</td>
|
|
</td>
|
|
<td>
|
|
<td>
|
|
- <input type="text" placeholder="请输入" value={item.value} onInput={this.handleInputformula.bind(this,v.id,details,idd)}/>
|
|
|
|
|
|
+ <input type="text" placeholder="请输入" value={item.value} onKeyDown={this.handleReg.bind(this)} onInput={this.handleInputformula.bind(this,v.id,details,idd)}/>
|
|
</td>
|
|
</td>
|
|
<td>
|
|
<td>
|
|
<span>{item.uint}</span>
|
|
<span>{item.uint}</span>
|