วิธีแก้ปัญหาทั้งหมดข้างต้นค่อนข้างใหญ่ฉันต้องการให้ 2 เซ็นต์ของฉันกับสิ่งนี้
ฉันเพียงตรวจสอบว่าค่าที่ป้อนเป็นตัวเลขหรือไม่และตรวจสอบว่าค่านั้นไม่ว่างเปล่านั่นคือทั้งหมด
นี่คือ html:
<input type="text" ng-keypress="CheckNumber()"/>
นี่คือ JS:
$scope.CheckKey = function () {
if (isNaN(event.key) || event.key === ' ' || event.key === '') {
event.returnValue = '';
}
};
มันค่อนข้างง่าย
ฉันเชื่อว่าสิ่งนี้จะใช้ไม่ได้กับ Paste tho ดังนั้นจึงเป็นที่รู้จัก
สำหรับ Paste ฉันคิดว่าคุณจะต้องใช้เหตุการณ์ onChange และแยกวิเคราะห์สตริงทั้งหมดซึ่งเป็นสัตว์ร้ายอีกตัวหนึ่ง นี่เป็นข้อมูลเฉพาะสำหรับการพิมพ์
อัปเดตสำหรับวาง : เพียงเพิ่มฟังก์ชัน JS นี้:
$scope.CheckPaste = function () {
var paste = event.clipboardData.getData('text');
if (isNaN(paste)) {
event.preventDefault();
return false;
}
};
และอินพุต html เพิ่มทริกเกอร์:
<input type="text" ng-paste="CheckPaste()"/>
ฉันหวังว่านี่จะช่วย o /