1. 程式人生 > >表單填寫後輸回車跳轉到下一個輸入

表單填寫後輸回車跳轉到下一個輸入

背景:錄入系統需要使用者輸入相關資料,但使用者習慣在excel中回車繼續輸入下一個專案。

網上找了好幾個例子似乎都無法同時在chrome 和 IE裡使用。

後面找到一個,稍微修改了下,發現可用,供大家參考。

<script type="text/javascript">
    function handleEnter (field, event) {
        var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
        if (keyCode == 13) {
            var i;
            for (i = 0; i < field.form.elements.length; i++)
                if (field == field.form.elements[i])
                    break;
            do{
               i = (i + 1) % field.form.elements.length;
            }while(field.form.elements[i].type != 'text' )  //可擴充套件到其他比如select 值了,避開label
            field.form.elements[i].focus();
            //window.event.keyCode=9
            return false;
        }
        else
            return true;
    }
</script>


頁面

   echo "<td><input type='text' name='ps[]' value='".$row['profit']."' onkeypress=\"return handleEnter(this, event)\" /></td>";
   echo "<td><input type='text' name='is[]' value='".$row['initasset']."' onkeypress=\"return handleEnter(this, event)\" /></td>";
   echo "<td><input type='text' name='us[]' value='".$row['useasset']."' onkeypress=\"return handleEnter(this, event)\" /></td>";