JS-监听文本回车事件写入数据表单

场景

 
ERP系统扫描输入货品编号到文本框后,触发写入记录到数据表格,并对数据进行渲染。
 

解决方案

通过发现回车或者换行符,则写入数据表格
 

代码

//监听文本框输入事件
$('#gidinput').bind('input propertychange', gidinputChangetemp);

//根据输入写入数据
var value = $("#gidinput").val(); //获取输入框的值
var codenum = value.substr(value.length - 1).charCodeAt();
var inputrows = value.split(/[\r\n]+/);

if(codenum == 10 || codenum == 13) { //如果发现回车或者换行符,则写入数据表格
    $("#gidinput").val("");
    if(inputrows[0] != "") {
        var data = $('#dg').datagrid('getData'); //获取数据
        var x = $('#dg').datagrid('insertRow', { //写入数据
            row: {
                value: inputrows[0],
                error: STYLE_ERROR
            }
        });
        checkRow(data.total - 1, inputrows[0]); //判断数据表格内容进行相应样式渲染
    }
}
 
流程
 

1 监听文本框输入事件
2 获取输入框的值
3 发现回车或者换行符,则写入数据表格
4 判断数据表格内容进行相应样式渲染

 

常见问题

1  监听事件兼容问题
   onpropertychange事件,顾名思义,就是property(属性)change(改变)的时候,触发事件。这是IE专有的!oninput是为了兼容其它浏览器!
 
2  回车换行的判断
根据最后一个字符判断回车换行
codenum=value.substr(value.length-1).charCodeAt();
如果codenum==10||codenum==13则触发写入数据

 

posted @ 2015-10-19 12:06  洛河  阅读(891)  评论(0编辑  收藏  举报