不行你就调用onchange事件,然后再调用相关的程序

解决方案 »

  1.   

    你试试在onpropertychange事件中跟踪一下value变化。
      

  2.   

    TO:syukugai
    请问怎么要JS中判断回车符(\n)呢。
      

  3.   

    我也只是猜测,
    请先确认一下在扫描完条码的时候会不会激发onkeydown,或者onkeyup,onkeypress事件,
    在里面加入alert();就可以。
    然后说明一下结果。
      

  4.   

    我试过了,能激发onkeydown。
    alert(keycode) 的值是13可就是不能处发读入BUTTON按下的事件
      

  5.   

    你在textbox中也加入onkeydown处理试试。
      

  6.   

    看了一下你的代码,document.all('btnbcr').focus(); 把这一句改成调用 btnbcr的onclick事件处理函数调用就可以了。
      

  7.   

    如果,btnbcr是一个submit控件的话,
    直接调用 formObj.submit().
    这里的formObj是指要提交的form对象。
      

  8.   

    onclick的方法我也试过了,能处发读入BUTTON按下的事件,但处发了二次:(
    所以我郁闷啊。
      

  9.   

    应该是程序处理的问题。    }else if(keyCode==13 ){
            document.all('btnbcr').focus();
        } 这个地方中是让按钮聚焦,
    并不会触发按钮按下。
    其实你只要调用表单的 submit方法就可以了。
    举例<form name="form1" id="form1">
    <input type="text" name="barcode" value="" onkeydown="keyDown(event);">
    <input type="submit" name="submit">
    </form>
    <script language="javascript">
    document.onkeydown = function keyDown(e){
        if (!e) var e = window.event
        if (e.keyCode) keyCode = e.keyCode;
        else if (e.which) keyCode = e.which;
        var txtInput = document.getElementById("barcode");
        if(keyCode==123 ){
            txtInput.focus();
        }else if(keyCode==13 ){
            document.all('form1').submit();
        }
    }
    </script>
      

  10.   

    问题还是没有解决!!!
    不过还是要谢谢syukugai。。
      

  11.   

    有些奇怪呀,
    那么你在onkeydown事件中是否检测到了charCode==13呢,
    如果没有那个时候检查到的是多少?
      

  12.   

    说的是keyCode吧
    if(keyCode==123 ){
            txtInput.focus();
        }else if(keyCode==13 ){
            alert(keyCode);
            document.all('btnbcr').focus();
        } 
    加上alert(keyCode);的时候,
    不管是条形码扫描器,还是键盘的回车
    keyCode的值都是13..
      

  13.   

    <script language="javascript">
    document.onkeydown = function keyDown(e){
        if (!e) var e = window.event
        if (e.keyCode) keyCode = e.keyCode;
        else if (e.which) keyCode = e.which;
        var txtInput = document.getElementById("barcode");
        if(keyCode==123 ){
            txtInput.focus();
        }else if(keyCode==13 ){
            document.all('form1').submit();
        }
    }
    </script>