tags:

views:

260

answers:

4

hi all,

im using javascript to validate keys in textbox. it is not working :(

  function numeric(e) {
        return ((e.keyCode == 8) ||
                (e.keyCode == 9) ||
                (e.keyCode > 47 && e.keyCode < 58) ||
                (e.keyCode > 36 && e.keyCode < 41) ||
                (e.keyCode == 46) ||
                (e.keyCode > 95 && e.keyCode < 106) ||
                e.keyCode == 190 ||
                e.keyCode == 110);
    }

help me...

A: 

Try this if you want a numbers only textbox:

function numbercheck(event) {
    var unicode = event.charCode; var unicode1 = event.keyCode; if (navigator.userAgent.indexOf("Firefox") != -1 || navigator.userAgent.indexOf("Safari") != -1) {
        if (unicode1 != 8) {
            if ((unicode >= 48 && unicode <= 57) || unicode1 == 37 || unicode1 == 39 || unicode1 == 35 || unicode1 == 36 || unicode1 == 9 || unicode1 == 46)
            { return true; }
            else
            { return false; }
        }
    }
    if (navigator.userAgent.indexOf("MSIE") != -1 || navigator.userAgent.indexOf("Opera") == -1) {
        if (unicode1 != 8) {
            if (unicode1 >= 48 && unicode1 <= 57)
            { return true; }
            else
            { return false; }
        }
    }
}

And in your textbox call it on the onkeypress event:

onkeypress="return numbercheck(event)" 
Pandiya Chendur
A: 
function numeric(e) {
   e = e || window.event;
   keycode = e.keyCode || e.which;
   if(keycode === 13){
      alert("cheese");
   }
}
epascarello
This function checks to see if enter was pressed... Why?
ItzWarty
A: 

I know that in I.E. you can set event.keyCode=0 to suppress the key appearing in the control. But I think you need to trap the onkeydown. Firefox might have an equivalent. This is good because it prevents the key actually "arriving" at the control.

Also keep in mind that you might need to handle combinations of Shift + key and alt + key.

a good debug technique for this sort of thing is to say windows.status = event.keyCode, and you can see what the keycode is as you type it...

funkymushroom
A: 

Just try out the following code. I have checked F5 keycode, you can check as you want

function disableKey(event) 
{         
  if (!event) event = window.event;
  if (!event) return;
  var keyCode = event.keyCode ? event.keyCode : event.charCode;
  if (keyCode == 116) {
   showMsg("This functionality is disabled.");
   window.status = "F5 key detected! Attempting to disabling default response.";
   window.setTimeout("window.status='';", 2000);
   // Standard DOM (Mozilla):
   if (event.preventDefault) event.preventDefault();
   //IE (exclude Opera with !event.preventDefault):
   if (document.all && event && !event.preventDefault) {
     event.cancelBubble = true;
     event.returnValue = false;
     event.keyCode = 0;
   }
   return false;
  }
}

function setEventListenerForFrame(eventListener) 
{
  document.getElementById('your_textbox').onkeydown = eventListener;
  //frames['frame'].document.onkeypress = eventListener;   
}


<body onload="setEventListener(disableKey);">
A Bright Worker
I could not format it well, just copy into your code and try
A Bright Worker
Edit your post and use the "this is code" button
ItzWarty
Ok... Thanks will do it
A Bright Worker