Please place this code in footer. This may helps you.
<script type="text/javascript">
var selflag=false;
$(".numeric_input").select(function(event){selflag=true;});
$(".numeric_input").bind("mousedown","blur",function(event){selflag=false;});
$(".numeric_input").keydown(function(event) {
//assign maximum value to be allowed to x i.e 100 or 999 or etc as per requirement
var x=10000; // here you can place [% Q1 %] as per your requirement
// Allow: backspace, delete, tab, escape, enter (. key code==190,110 required for decimal input, so append 190,110 in array for decimal input)}
// Allow: Ctrl+A
// Allow: home, end, left, right
if ( $.inArray(event.keyCode,[46,8,9,27,13]) !== -1 || (event.keyCode == 65 && event.ctrlKey === true) || (event.keyCode >= 35 && event.keyCode <= 39))
{
// let it happen, don't do anything
selflag=false;
return;
}
else
{
// to allow range 0-x dynamically
var q,r,kc;
q=parseInt(x/10);
r=""+(x%10);
kc=r.charCodeAt(0);
if(($(this).val()>q || ($(this).val()==q && (event.keyCode < 48 || (event.keyCode > kc && event.keyCode <96) || event.keyCode > 96+(kc-48)))||($(this).val()!="" && $(this).val()==0 &&(event.keyCode == 48 || event.keyCode ==96))) && !selflag)
{
event.preventDefault();
}
//if something is selected in textbox allow only numbers 0-9 when x is greater than 9
if((selflag && ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105))) && x>9)
{
selflag=false;
return ;
}
else if((selflag && ((event.keyCode >= 48 && event.keyCode <= kc) || (event.keyCode >= 96 && event.keyCode <= 96+(kc-48)))) && x<=9)
{
selflag=false; //allows only upto 0-x if x<9
return ;
}
else if(selflag)
{
event.preventDefault();
}
// Ensure that it is a number and stop the keypress
if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 ))
{
event.preventDefault();
}
}
});
</script>