2016-11-07 43 views
0

我需要我的輸入只接受數字,小數和逗號的能力。現在使用type=number意味着我僅限於數字和小數,但我不確定如何允許使用逗號。任何人都可以建議我可以做什麼?創建一個只允許數字,小數和逗號的輸入

JS

var StopPrice = React.createClass({ 
    getInitialState() { 
    return { 
     stopPrice: 92.99 
    } 
    }, 

    updateStopPrice(stopPrice) { 
    this.setState({ 
     stopPrice 
    }) 
    }, 

    onChange(event) {  
    var stopPrice = event.target.value; 

    this.setState({ 
     stopPrice 
    }); 
    }, 

    render() { 
    return <div> 
     <input type="number" value={this.state.stopPrice} onChange={this.onChange} /> 
    </div> 
    } 
}); 

JS小提琴:http://jsfiddle.net/kyllle/mjq9omyx/

+0

爲什麼你需要'''? – Cerbrus

+0

在哪裏你想讓'''進入?添加允許格式的示例。 –

+0

這裏有什麼問題?我們不清楚。 – Prasath

回答

0

按照docs

值=浮點數
表示號碼的字符串。

而且,如果你走得更遠,到spec for floating point,你會注意到你不能有任何其他字符。

要達到所需的行爲,您可以使用pattern屬性並指定一個正則表達式,例如,

<input pattern="\d+((\.|,)\d+)?" /> 

正則表達式:

\d+((\.|,)\d+)? 

允許數字(\ d),則可選部分:
任一個點或逗號|和多個數字\ d +(。)。

相關問題