第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

角度驅(qū)動形式如何禁用選項在數(shù)字輸入處寫入十進制數(shù)字

角度驅(qū)動形式如何禁用選項在數(shù)字輸入處寫入十進制數(shù)字

寶慕林4294392 2021-09-04 15:07:45
我有一個 Angular 表單,我希望用戶只提交一個完整的數(shù)字(不是十進制),并且他不能選擇在表單中寫入 .(點)符號來寫入十進制數(shù)。我想完全阻止在表單上寫 .(dot) 的選項。是否可以?在 component.ts 添加這個功能_keyUp(event: any) {    const pattern = /[0-9\+\-\ ]/;    let inputChar = String.fromCharCode(event.charCode);    if (!pattern.test(inputChar)) {      // invalid character, prevent input      event.preventDefault();    }}在您的模板中使用以下內(nèi)容<input(keyup)="_keyUp($event)">但它不起作用,仍然可以選擇在表單上寫 .(dot) 。我想完全阻止在表單上寫 .(dot) 的選項。
查看完整描述

2 回答

?
qq_遁去的一_1

TA貢獻1725條經(jīng)驗 獲得超8個贊

我相信在keyup事件發(fā)生時角色已經(jīng)在場,你無法阻止已經(jīng)發(fā)生的事情。嘗試keypress事件:

<input (keypress)="_keyUp($event)">


查看完整回答
反對 回復(fù) 2021-09-04
?
慕少森

TA貢獻2019條經(jīng)驗 獲得超9個贊

有一些額外的想法:這個(發(fā)現(xiàn))stackblitz我會說它做得更好:


組件html:


<input (keypress)="numberOnly($event)" type="text">

和 TS 文件:


numberOnly(event): boolean {

const charCode = (event.which) ? event.which : event.keyCode;

   if (charCode > 31 && (charCode < 48 || charCode > 57)) {

   return false;

}

  return true;

}

為什么更好?

  1. 沒有正則表達式:俗話說,如果你試圖用正則表達式解決一個問題,現(xiàn)在你有兩個問題。

  2. Keypress,它會更接近你想要的,而無需更換字符串

  3. 更好的事件名稱。如果我有我的 druthers _namesOfAnything 永遠不會成為一件事。


查看完整回答
反對 回復(fù) 2021-09-04
  • 2 回答
  • 0 關(guān)注
  • 176 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號