Javascript 仅更改React中输入字段的前两个数字

Javascript 仅更改React中输入字段的前两个数字,javascript,reactjs,Javascript,Reactjs,我需要一个文本输入字段,允许用户只输入一千个值的前两个数字。分隔符后面的三个零应该是固定的 截图: 我使用React,对于其他输入字段,我使用可以创建自定义掩码。假设它如下所示。如果我能理解你 var MyMaskIntput = React.createClass({ getInitialState: function () { return { val: "" }; }, handleChange: funct

我需要一个文本输入字段,允许用户只输入一千个值的前两个数字。分隔符后面的三个零应该是固定的

截图:


我使用React,对于其他输入字段,我使用

可以创建自定义掩码。假设它如下所示。如果我能理解你

var MyMaskIntput = React.createClass({
    getInitialState: function () {
        return {
            val: ""
        };
    },
    handleChange: function (e) {
        this.setState({ val: e.target.value });
    },
    componentDidMount: function () {
        var $elem = $(React.findDOMNode(this.refs.maskedInput));
        var reverse = { reverse: false };

        if (this.props.isReverse) {
            reverse = { reverse: true };
        }

        $elem.mask(this.props.mask, reverse);
    },
    render: function () {
        return (<div>
            <input type="text" onChange={this.handleChange} ref="maskedInput"></input>
            {this.state.val}
        </div>);
    }
});

React.render(
    <div>
        KM = <MyMaskIntput isReverse={true} mask={"#0.000"} /><br />
    </div>
    , document.getElementById("content"));
var MyMaskIntput=React.createClass({
getInitialState:函数(){
返回{
瓦尔:“
};
},
handleChange:函数(e){
this.setState({val:e.target.value});
},
componentDidMount:函数(){
var$elem=$(React.findDOMNode(this.refs.maskedInput));
var reverse={reverse:false};
如果(此.道具.isReverse){
反向={reverse:true};
}
$elem.mask(this.props.mask,反面);
},
渲染:函数(){
返回(
{this.state.val}
);
}
});
反应(
公里=
,document.getElementById(“内容”);
它将返回以下结果。如果输入1s。 11.111
您还可以设置一些限制。

您可以创建自定义掩码。假设它如下所示。如果我能理解你

var MyMaskIntput = React.createClass({
    getInitialState: function () {
        return {
            val: ""
        };
    },
    handleChange: function (e) {
        this.setState({ val: e.target.value });
    },
    componentDidMount: function () {
        var $elem = $(React.findDOMNode(this.refs.maskedInput));
        var reverse = { reverse: false };

        if (this.props.isReverse) {
            reverse = { reverse: true };
        }

        $elem.mask(this.props.mask, reverse);
    },
    render: function () {
        return (<div>
            <input type="text" onChange={this.handleChange} ref="maskedInput"></input>
            {this.state.val}
        </div>);
    }
});

React.render(
    <div>
        KM = <MyMaskIntput isReverse={true} mask={"#0.000"} /><br />
    </div>
    , document.getElementById("content"));
var MyMaskIntput=React.createClass({
getInitialState:函数(){
返回{
瓦尔:“
};
},
handleChange:函数(e){
this.setState({val:e.target.value});
},
componentDidMount:函数(){
var$elem=$(React.findDOMNode(this.refs.maskedInput));
var reverse={reverse:false};
如果(此.道具.isReverse){
反向={reverse:true};
}
$elem.mask(this.props.mask,反面);
},
渲染:函数(){
返回(
{this.state.val}
);
}
});
反应(
公里=
,document.getElementById(“内容”);
它将返回以下结果。如果输入1s。 11.111
你也可以设置一些限制。

使用输入掩码使用输入掩码谢谢你的回答。只有前两个数字应该是可变的,其余的应该是固定的。例如:12000、15000、22000……谢谢你的回答。只有前两个数字应该是可变的,其余的应该是固定的。例如12.000、15.000、22.000。。。