使用ReactJS,我想設置一個按鍵正則表達式偵聽器。我的代碼如下。Reactjs按鍵正則表達式?
formation: function() {
var f1c = document.getElementsByClassName('f1t').value;
var validator = new RegExp('^[0-9.]*$');
var runner = validator.test(f1c);
var bling = document.getElementById('f1p2');
if (runner) {
alert("Vegetables");
} else {
alert("Fruits");
}
},
這是從一個單獨的函數調用的,就像這樣。
something: function() {
return (
<input type="text" className="f1t" onKeyUp={this.formation}>something</p>
);
}
問題是,只有當我刪除if參數時,keyup事件纔會運行,這意味着keyup可以工作。但是,我的邏輯必須有一些東西。
如上圖所示,如果f1c
的值不是數字,則只顯示fruit
時,上述代碼會一直顯示Fruits
。
嘗試在你的處理程序中使用'console.log(f1c)',看看會發生什麼 – webdeb
你的第一個塊是無效的javascript ...這裏有一些語法錯誤。你能修好它嗎?你的if/else不會工作的一件事 –
是的,我的console.log返回'undefined.'所以我將'ElementsByClassName'改爲'ID',並且它返回了它應該做的。 –