這工作:
var elt = document.getElementById('test');
function saveLastInput(e) {
e.target.setAttribute('last-input', elt.value);
}
function forbidNonNumbers(e) {
var elt = e.target,
newValue = elt.value,
lastInput,
newValueIsForbidden = false;
if (newValue !== '' && !/^[0-9]{1,3}(\.[0-9]{0,2})?$/.test("" + newValue)) {
newValueIsForbidden = true;
}
if (newValueIsForbidden) {
lastInput = elt.getAttribute('last-input');
elt.value = lastInput;
}
}
elt.addEventListener(elt.oninput ? 'input' : 'keyup', forbidNonNumbers);
elt.addEventListener(elt.oninput ? 'input' : 'keyup', saveLastInput); // Insert this line last!
測試在Chrome,FF,IE 11
演示這裏:
使用['oninput'](https://developer.mozilla.org/en-US/docs/Web/Events/input)代替'onkeyup'。 – Teemu 2015-02-10 12:44:14
謝謝你......但是apex頁面不支持這個屬性 – rajasekhar 2015-02-10 13:07:28
在你的問題中沒有關於「apex」的內容。它是什麼? – Teemu 2015-02-10 13:08:57