3

PhoneGapでjQueryMobileを使用しています..現在、問題があります..検索しましたが、正確な回答が得られませんでした. 私の問題は、Textbox での DOT の入力を防ぎたいことです。テキストボックスは年齢を入力するためのものです。

<input type="number" class="form_textbox_half" data-role="none" id="age" pattern="[0-9]*">

そしてそのキープレスイベント;

$('#age').live('keypress', function(){preventDot(event)});

次に、その関数は

function preventDot(event) {
    alert(0);
    //var test = document.getElementById("#age");
    var key = event.charCode ? event.charCode : event.keyCode;
    $("#age").innerHTML = key;
    if (key == 46) {
        return false;
    }
}

しかし、うまくいきません..テキストボックスにDOTを入力しないようにしたいです。小さな問題だと思います.. :(しかし、解決策が得られませんでした..助けてください!

4

4 に答える 4

2

問題を修正しました

フィドル

問題は、イベントの伝播を停止するためにpreventDefaultを使用していなかったことです。keypress

これは、変更されたメソッドがどのように見えるかです:

function preventDot(event)
{
    alert(event.charCode)
    //var test = document.getElementById("#age");
    var key = event.charCode ? event.charCode : event.keyCode;  
    $("#age").innerHTML = key;
    if (key == 46)
    {
        event.preventDefault();
        return false;
    }    
}
于 2013-06-14T09:19:50.793 に答える
-1

このように使用します

$('#age').live('keypress', function(event){preventDot(event)});

デモを見る

于 2013-06-14T09:19:30.903 に答える