簡體   English   中英

如何僅在動態創建的字段上強制數字?

[英]How can I force numbers only on a dynamically created field?

我試圖將動態字段限制為僅數字,但是如果我嘗試:

$(document).on('keydown', '.numberOnly', function() {
    if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 || (e.keyCode == 65 && (e.ctrlKey ===
            true || e.metaKey === true)) || (e.keyCode >=
            35 && e.keyCode <= 40)) {
        return;
    }
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode >
            57)) && (e.keyCode < 96 || e.keyCode > 105)) {
        e.preventDefault();
    }
});

但這是行不通的。 如果我將頂行替換為:

$(".numberOnly").keydown(function(e) {  

但是,這僅適用於靜態字段。

您的方法看起來還不錯,並且應該可以正常工作。 您從委托事件綁定器中遺漏了EventObject e (這是一個小錯字)(但將其包含在直接事件綁定器中,這就是它起作用的原因)。

將第一行更改為:

$(document).on('keydown', '.numberOnly', function(e) {

應該解決你的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM