Javascript 反应控制输入不允许我更改输入值
React Control input不允许我在浏览器中键入时更改输入值。其余部分,代码将解释所有内容。 如果前两个输入已填充,但如果前两个输入为空,那么如何在浏览器中启用编辑Javascript 反应控制输入不允许我更改输入值,javascript,reactjs,virtual-dom,Javascript,Reactjs,Virtual Dom,React Control input不允许我在浏览器中键入时更改输入值。其余部分,代码将解释所有内容。 如果前两个输入已填充,但如果前两个输入为空,那么如何在浏览器中启用编辑 const PriceListRow = React.createClass({ getInitialState(){ return { flatPrice: "", } }, setFlatPrice(a, b){ "use
const PriceListRow = React.createClass({
getInitialState(){
return {
flatPrice: "",
}
},
setFlatPrice(a, b){
"use strict";
let self = this,
prod = a * b;
if ( !(_.isNumber(prod)) )
self.setState({flatPrice: ""});
else
self.setState({flatPrice: prod});
},
render(){
let self = this;
return <div>
<input type="number" name={"unitSize"} placeholder="1000 Sq. Ft." id={"unitSize"}
onBlur={ ()=> { self.setFlatPrice($("#bsp").val(), $("#unitSize").val()); }}
/>
<input type="number"
name={"bsp"}
placeholder="4500" id={"bsp"}
onBlur={ ()=> { self.setFlatPrice($("#bsp").val(), $("#unitSize").val()); }}
/>
<input type="text" name={"flatPrice"} placeholder="Size * BSP" id={"flatPrice"} value={self.state.flatPrice} />
</div>
}
});
const PriceListRow=React.createClass({
getInitialState(){
返回{
统一价格:“,
}
},
固定价格(a、b){
“严格使用”;
让self=这个,
prod=a*b;
如果(!(.isNumber(prod)))
self.setState({flatPrice:});
其他的
self.setState({flatPrice:prod});
},
render(){
让自我=这个;
返回
{self.setFlatPrice($(“#bsp”).val(),$(“#unitSize”).val();}
/>
{self.setFlatPrice($(“#bsp”).val(),$(“#unitSize”).val();}
/>
}
});
如果我理解正确的话。您希望用户编辑flatPrice
,即使它是由上述2个输入值自动设置的
注意:完全删除了jQuery
依赖项
下面的代码片段将满足您的需要
const PriceListRow=React.createClass({
getInitialState(){
返回{
统一价格:“,
单位大小:0,
bsp:0
}
},
onUnitSizeChange(东){
this.setState({unitSize:e.target.value});
},
onBSPChange(e){
this.setState({bsp:e.target.value});
},
价格变动(e){
this.setState({flatPrice:e.target.value});
},
setFlatPrice(){
让prod=this.state.unitSize*this.state.bsp;
this.setState({flatPrice:isNaN(prod)?“”:prod});
},
render(){
返回
}
});
render(,document.getElementById(“根”))代码>
如果我理解正确的话。您希望用户编辑flatPrice
,即使它是由上述2个输入值自动设置的
注意:完全删除了jQuery
依赖项
下面的代码片段将满足您的需要
const PriceListRow=React.createClass({
getInitialState(){
返回{
统一价格:“,
单位大小:0,
bsp:0
}
},
onUnitSizeChange(东){
this.setState({unitSize:e.target.value});
},
onBSPChange(e){
this.setState({bsp:e.target.value});
},
价格变动(e){
this.setState({flatPrice:e.target.value});
},
setFlatPrice(){
让prod=this.state.unitSize*this.state.bsp;
this.setState({flatPrice:isNaN(prod)?“”:prod});
},
render(){
返回
}
});
render(,document.getElementById(“根”))代码>
这里有3个输入,这不允许您这样做?这里需要什么jQuery
?您可以在状态下输入三个输入。我知道这样很安全。但是它不能解决我的可编辑浏览器dom元素的问题。这个可编辑浏览器dom元素是什么意思?当用户填充值时,我不能编辑输入#flatPrice中的文本。检查问题。这里有3个输入,不允许您这样做?这里需要jQuery
什么?您可以在状态下输入三个输入。我知道这样很安全。但是它不能解决我的可编辑浏览器dom元素的问题。这个可编辑浏览器dom元素是什么意思?当用户填充值时,我不能编辑输入#flatPrice中的文本。检查问题。