场景

 
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则触发写入数据

JS-监听文本回车事件写入数据表单的更多相关文章

  1. js监听文本框内容变化

    js监听文本框内容变化 原理很简单,就是在外部先声明一个用来记录input值的变量,然后每0.1秒比较这个值与input的值,如果发生改变,则运行自己的代码,同时改变变量.从而实现对input值改变的 ...

  2. js监听文本框值变化事件,就oninput & onpropertychange & onkeyup & onchange的区别

    在Web前端项目中实时监听文本框的值变化是非常常见的功能,通常最简单最容易想到的是onkeyup和onchange事件,但是在使用onkeyup来监听键盘事件的时候,监听不到鼠标右键的粘贴.复制的操作 ...

  3. js监听transition过渡事件

    html <div id="mydiv"> </div> style #mydiv{ width:100px; height:100px; backgrou ...

  4. js监听文本框变化事件

    用js有两种写法: 法一: <!DOCTYPE HTMl> <html> <head> <title> new document </title& ...

  5. JS监听关闭浏览器事件

    Onunload与Onbeforeunload Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或 ...

  6. js监听浏览器关闭事件

    html : <HTML>  <HEAD>  <title>test</title>  </HEAD>  <body onbefore ...

  7. js 监听组合键盘事件

    有些时候,我们需要在网页上,增加一些快捷按键,方便用户使用一些常用的操作,比如:保存,撤销,复制.粘贴等等. 我们所熟悉的按键有这么集中类型: 单独的按键操作,如:delete.up.down等 两位 ...

  8. js监听页面copy事件添加版权信息

    个人博客 地址:http://www.wenhaofan.com/article/20180921103346 1.介绍 当页面需要做版权保护时,比如当用户copy我们网站的文章时,我们会希望在他co ...

  9. js 监听输入框输入事件兼容ie7

    $(element).bind("input propertychange",function(){});

随机推荐

  1. 设计模式的征途—1.单例(Singleton)模式

    单例模式属于创建型模式的一种,创建型模式是一类最常用的设计模式,在软件开发中应用非常广泛.创建型模式将对象的创建和使用分离,在使用对象时无需关心对象的创建细节,从而降低系统的耦合度,让设计方案更易于修 ...

  2. javascript 数组的部分常用属性用法

    数组 检测数组(返回布尔类型 a. instanceof(); 检测是否是数组对象 console.log(arr instanceof Array) ; b. Array.isArray() ,H5 ...

  3. iOS最好用的引导页

    最近项目结束的时候又要改引导页,之前写的启动页改起来太麻烦了,所以就直接封装一个,功能可能还不是很完善,但是感觉用起来也比较方便,在这里和大家分享一下. 这是github的下载地址:https://g ...

  4. Terminating app due to uncaught exception 'NSUnknownKeyException' this class is not key value coding-compliant for the key

     Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[ViewController > se ...

  5. js实现哈希表(HashTable)

    在算法中,尤其是有关数组的算法中,哈希表的使用可以很好的解决问题,所以这篇文章会记录一些有关js实现哈希表并给出解决实际问题的例子. 第一部分:相关知识点 属性的枚举: var person = { ...

  6. 自动化利器-YUM仓库搭建实战

    本地YUM仓库搭建实战 YUM主要用于自动安装.升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系.要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的reposito ...

  7. jquery练习之瀑布流

    最近有空简单学习了下瀑布流,写完后想和大家一起分享下,但我知道我的代码有很多缺陷不足,希望多多包涵.(纯属兴趣非专业学习人士) 众所周知,瀑布流大概分为2种,一种是浮动式的瀑布流,一种是定位式的瀑布流 ...

  8. 老李谈HTTP1.1的长连接 2

    HTTP1.1的长连接 但是HTTP1.1开始默认建立的是长连接,即一旦浏览器发起HTTP请求,建立的连接不会请求应答之后立刻断掉. 1. 一个复杂的具备很多HTTP资源的网页会建立多少TCP连接,如 ...

  9. SVN:重命名文件之后不允许提交

         提交文件所属的目录,这样可以提交成功.

  10. 文件系统与linux相关知识点

    文件系统是操作系统中管理持久性数据的子系统,提供数据存储和访问功能.对于服务器开发人员,比较关注的是unix(linux)环境下的文件系统,比如分区与磁盘关系,磁盘的剩余空间,文件的类型与权限控制,文 ...