यह कोड है। जब मैं बैकस्पेस कुंजी दबाता हूं तो मैं केवल संदेश छिपाना चाहता हूं, मुझे नहीं पता कि यह बैकस्पेस पर क्यों नहीं जा रहा है, इसके अलावा यह ठीक काम करता है।

    //on keypressed in textbox
    $(".phone").keypress(function (e) {
        if (e.which == 8 ){
            $(".errmsg").hide();
        }
        //if not numeric, then it don't let you type
        if (e.which != 8 && e.which != 43 && e.which != 45  && (e.which < 48 || e.which > 57)) {
           debugger
            //display error message
            $(".errmsg").html("Digits Only").show();
            e.preventDefault();
        } else {
            debugger
            $(".errmsg").hide();
        }
    });
1
Bilal Ahmad 14 जिंदा 2020, 08:23

1 उत्तर

सबसे बढ़िया उत्तर

इसे संभालने के लिए कृपया keyup और keydown ईवेंट का उपयोग करें।

//on keypressed in textbox
$(".phone").on('keyup keydown', function(e) {
    if (e.which == 8) {
        console.log('backspace key pressed');
    }

    //if not numeric, then it don't let you type
    if (e.which != 8 && e.which != 43 && e.which != 45 && (e.which < 48 || e.which > 57)) {

        //display error message
        $(".errmsg").html("Digits Only").show();
        e.preventDefault();
    } else {

        $(".errmsg").hide();
    }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

 <input type="text" class="phone" />
4
Sohail Ashraf 14 जिंदा 2020, 05:49