<input  onkeydown="return ak();">
<SCRIPT LANGUAGE="JavaScript">
<!--
function ak()
{
var kval=event.keyCode;
if((kval<48 || kval>57) && (kval<65 || kval>90))
{
//alert("error");
//event.keyCode=0;
return false;
}
else
{
return true;
}
return false
}
</SCRIPT>

解决方案 »

  1.   

    <input type="text" name="class_id" maxlength="30" size="30" onkeydown="return ak()">
    这样过后,还是可以输入中文呀,我想禁止输入中文.
      

  2.   

    <input style=ime-mode:disabled>
      

  3.   

    onblur 里面写一个函数.替换掉非字母,数字项目.
    用正则表达式来写最好.
    比如:
    str = str.replace(/[^\d^(a-z)^(A-Z)]/g,"")
      

  4.   

    要禁止中文的话用qiushuiwuhen(秋水无恨)的方法是可以禁止输入.
    但是可以COPY的.
      

  5.   

    <input style=ime-mode:disabled onbeforepaste='clipboardData.setData("text",clipboardData.getData("text").replace(/[^ -~]/g,""))'> 
      

  6.   

    <input type="text" name="class_id" maxlength="30" size="30" style=ime-mode:disabled>
    这样整个页面都禁止中文了,不能用中文输入法,我只想这个文本框禁止,而其它的文本框要求可以输入中文.
      

  7.   

    加onbeforepaste后,每个文本框都不能copy了,我只想那一个文本框限制
      

  8.   

    <script>
    function test(){
    var str = document.all.t1.value ;
    if (isOnly(str))
    alert("OK!");
    else
        alert("not OK!");}function isOnly(sStr){
    var flag = true ;
    for (i = 0; i < sStr.length; i++) {
    var c = sStr.charCodeAt(i) ;
    if (!((c>=48&&c<=57)||(c>=65&&c<=90)||(c>=97&&c<=122))){
    flag = false ;
    break ;
    }
     }
    return flag ;

    }
    </script>
    <input type="text" name="t1">
    <br><input type="button" value="test" onclick="test();">
    </BODY>
    试试。