博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript表格搜索高亮功能模拟
阅读量:5824 次
发布时间:2019-06-18

本文共 1982 字,大约阅读时间需要 6 分钟。

  在网页表格中模拟excle的搜索高亮显示功能。当在搜索框中输入需要的姓名时,若表格中存在对应的数据,则该表格背景色变为黄色。

  下面为表的HTML源码:

表格搜索
姓名:
ID 姓名 年龄
1 阿童木 30
2 机器猫 44
3 小叮当 53
4 海雅 69
5 祖鲁 27
5 JavaScript权威指南 27

  模拟思路:获取表格中姓名列对应的元素集合的value值,与输入表格值进行比较是否相等。若两值相等,则高亮显示,其余表格不变色。

1 window.οnlοad=function() 2 { 3     var oTxt=document.getElementById('name'); 4     var oBtn=document.getElementById('btn1'); 5     var oTab=document.getElementById('tab1'); 6     oBtn.οnclick=function() 7     { 8         for(var i=0;i

  (1)出现问题

  代码写成这样:

1 window.οnlοad=function() 2 { 3     var oTxt=document.getElementById('name'); 4     var oBtn=document.getElementById('btn1'); 5     var oTab=document.getElementById('tab1'); 6     var oValue=oTxt.value; 7      8     oBtn.οnclick=function() 9     {10         for(var i=0;i

  造成第一次输入点击后,第二次输入点击无效。

  初步定为问题产生的bug在于后者在于获取input元素的value时,定义变量var oValue=oTxt.value;

  if(oTab.tBodies[0].rows[i].cells[1].innerHTML==oTxt.value)与

  if(oTab.tBodies[0].rows[i].cells[1].innerHTML==oValue)两者的差异。

  造成这个bug的原因是什么?

  var oTxt=document.getElementById('name');

  var oValue=oTxt.value;

  if(oTab.tBodies[0].rows[i].cells[1].innerHTML==oValue)

  与

  var oTxt=document.getElementById('name');

  if(oTab.tBodies[0].rows[i].cells[1].innerHTML==oTxt.value)

  造成两个代码块的核心区别的原因是什么?

  似乎在于变量赋值于点击事件触发函数调用的前后有关,将有问题的代码的变量移到函数内部,整个代码也正常了。JS中变量初始化的值只有一个?

window.οnlοad=function(){    var oTxt=document.getElementById('name');    var oBtn=document.getElementById('btn1');    var oTab=document.getElementById('tab1');    oBtn.onclick=function()    {        var oValue=oTxt.value;        for(var i=0;i

 

转载于:https://www.cnblogs.com/f6056/p/9324274.html

你可能感兴趣的文章
SpringBoot-Shiro使用
查看>>
分布式理论:CAP是三选二吗?
查看>>
iOS 9.0之后NSString encode方法替换
查看>>
解决 ThinkPHP5 无法接收 客户端 Post 传递的 Json 参数
查看>>
ASMFD (ASM Filter Driver) Support on OS Platforms (Certification Matrix). (文档 ID 2034681.1)
查看>>
gitlab 账号注册及修改资料
查看>>
pxssh交换机自动刷限速模板
查看>>
CRM Transaction处理中的权限控制
查看>>
在PL/SQL中获取操作系统环境变量
查看>>
[转]linux创建链接文件的两种方法
查看>>
python ipaddress模块使用
查看>>
统计文件里面某个字符串出现次数
查看>>
FHS
查看>>
文件权限
查看>>
云从科技发布3D结构光人脸识别技术
查看>>
busybox里的僵尸进程为何那么多
查看>>
appium自动化属性使用一
查看>>
python debug
查看>>
mkisofs
查看>>
java 连接数据库之一个完整的函数
查看>>