这几天做了一个前端html页面,基于bootstrap框架开发,里面有个需求就是在输入框中输入字母或者文字时,下拉框自动刷新模糊查询出的信息。最初我的想法是监控键盘上的按键输入,每次输入一个字母后,发送异步请求至服务端进行数据查询。但是后来发现,这种方式做出来会有一个问题,就是这个监控是全局的,也就是页面刷新后,只要你按键盘,就会调用异步请求发送数据,这样跟我的设计思路是有出入的。

然后我查了很多资料,发现有一种方式可以监控某个输入框体中的变化,只要框体内容有变化,就会触发函数。具体实现如下。

首先先写好前端html,前端开发时先引入jquery和bootstrap相关组件:

电子发票相关

电子发票申请与下载

保单号

产品代码

发票抬头

纳税人识别号

投保渠道

  • «
  • »

发票类型

  • 个人发票

  • 公司发票

备注

确定

×

电子发票信息

参数参数内容

保单号产品代码投保渠道发票类型纳税人识别号发票抬头备注

关闭

申请

下载

我需要在焦点锁定投保渠道的输入框时弹出下拉组件(bootstrap中有案例可以直接使用),在输入时像后台发送异步请求,获取想要的数据信息,具体js的实现方法如下:

//监控渠道信息输入状态,根据渠道开头字母模糊查询渠道信息并加载下拉框。

$("#channelText").bind('input propertychange',function(){

delectChannelMenu();

getPageChannelMenu(currentpage,$("#channelText").val());

});```

jquery中的bind(type,[data],fn)方法,为每个匹配元素的特定事件绑定事件处理函数。type为```input propertychange```就是译为当input标签中的属性发生改变时触发函数fn,触发后先执行删除菜单中的内容,再更新菜单中的内容。两个方法具体如下:

清空渠道下拉菜单

*/

function delectChannelMenu(){

var count=$('#channel-menu').children().length;

for(var i=0;i

$('#paging').prev().prev().remove();

}

var pagesCount=$($('#paging').children()[0]).children().length;

for(var i=0;i

$('#next').parent().prev().remove();

}

}`

* 发送请求获取渠道

*/

function getPageChannelMenu(currentpage,channelCode){

//发送请求获取渠道

var url = '/NCPI/thridPlatform_getPageMsg.do';

$.ajax({

type:"POST",

url:url,

//防止自动转换数据格式。

data: {currentPage:currentpage,channelCode:channelCode},

async :false,

success:function(msg){

pageCount=msg.pageCount;

LoadChannelMenu(msg.thridPlatformList,msg.pageCount);

}

});

}```

加载渠道菜单

@param obj 渠道对象数组

*/

function LoadChannelMenu(obj,pageCount){

var menuObj = $('#paging').prev();

for(var i=0;i

menuObj.before('

'+obj[i].channelCode+'|'+obj[i].channelName+'');

}

var htmlObj="";

for(var i=1;i<=pageCount;i++){

htmlObj+='

'+i+''

if(i==5){

break;

}

}

$('#next').parent().before(htmlObj);

$('a').click(function(){

var id=$(this).parent().parent().parent().attr("id");

if(id=='channelNoInputBox'){

//操作选择渠道

$('#channelText').val($(this).html());

$('#channelNo').val($(this).next().val());

}

});

$("ul.dropdown-menu").on("click", "[data-stopPropagation]", function(e) {

e.stopPropagation();

});

}`

这样就可以实现在输入框中输入的同时对数据进行模糊查询。

python 输入框查询_前端实现输入框input输入时,调用后台查询。相关推荐

  1. ios与mac系统,input输入时,自带的输入法会出现重复显示问题

    问题:ios与mac系统,input输入时,自带的输入法会出现重复显示问题 解决方法:以不允许输入表情为例 需要为安卓及ios进行兼容处理 先区分系统再调用对应方法 ios: // ios不让输入表情 ...

  2. sql 最外层传值给最内层查询_腾讯云高级工程师如何玩转PG查询处理与执行器算法...

    作者介绍 孙旭,腾讯云高级工程师.10年数据库内核研发经验,熟悉PostgreSQL.Teradata数据库内核,熟悉数据库的查询优化.执行.事务并发以及存储等子系统:对分布式数据库有深入的研究和研发 ...

  3. hbase 查询_云HBase发布全文索引服务,轻松应对复杂查询

    云HBase发布了"全文索引服务"功能,自2019年01月25日后创建的云HBase实例,可以在控制台免费开启此"全文索引服务"功能.使用此功能可以让用户在HB ...

  4. 网站域名过户查询_聚查教你怎么用域名批量查询工具查询网站历史和域名权重...

    购买老域名之前,要先查网站历史和域名权重,但是很多小编都找不到合适的域名批量查询工具,那么,聚查教你怎么用域名批量查询工具查询网站历史和域名权重. 一:域名批量查询工具查询网站历史和域名权重查询入口 ...

  5. 微服务跨数据库联合查询_微服务架构中如何解决连表查询的问题?

    谢邀. 首先我说一个很实际的问题,不是任何公司都需要微服务,或者说,不要上来就搞微服务,我看过北京不少创业公司的项目,这么说吧,估值在2亿美金以下的创业公司,基本上没必要搞什么微服务,总共就二十几口程 ...

  6. html 输入框变红色,input输入框 输入错误时,点击注册按钮,输入框的边框变成红色,重新输入时,边框颜色恢复原来的,同时错误提示消失?...

    若输入框有误,则点击立即注册,输入框的颜色会变成红色,在输入框中输入正确的值的过程中,输入框的边框变成正常的颜色. 用  户  名 id="form_item_account" n ...

  7. python之路_前端基础之jQuery入门2

    一.样式操作 1.css样式 <body> <div class="c1">111</div> <script src="jqu ...

  8. python摄像头识别快递单号查询_免费对接快递鸟api单号识别查询接口(python)

    由于自己网站需要对接一些物流查询快递,然后在网上搜了一圈发现快递鸟比较适合我 之前写快递api的时候,官网上只有php和.net的示例,而我使用python封装的相关功能踩了许多坑,才搞出来,分享一下 ...

  9. 从0开始python后端开发_前端(html)向后端(python)传递数据_GET_POST

    关于POST和GET的请求方法和区别请参考:HTTP协议下GET与POST的区别 GET方法 首先先使用html简单编写一个表单页面 代码如下: <!DOCTYPE html> <h ...

  10. python应声虫代码_前端大牛们都学过哪些东西?

    一步一步来. CSS不能编程?用Less.Sass.Stylus.甚至直接用 Absurd,框架除了Bootstrap还有很多.JS写多了很麻烦?jQuery.移动开发?Zepto.js.结构不好?找 ...

最新文章

  1. 新代系统9服务器警报,新代系统OP、MOT警报一览表
  2. CNN+CTC语音识别
  3. decimal类型保留两位小数
  4. 程序猿崛起——Growth Hacker
  5. MAT之GRNN/PNN:基于GRNN、PNN两神经网络实现并比较鸢尾花(iris数据集)种类识别正确率、各个模型运行时间对比
  6. 一个可行的绑定下拉列表的方法(bind dropdownlist)
  7. linux vmware硬盘,给vmware的Linux虚拟机增添硬盘
  8. 搭建简单Django服务并通过HttpRequester实现GET/POST http请求提交表单
  9. 风控五大模型、三大风险指的是什么--几大模型PD、LGD、评分模型都有哪些细节点
  10. 与其他库一起使用jQuery
  11. 【JAVA程序设计】(C00048)基于springboot酒店宾馆管理系统
  12. ShaderJoy —— 最简单的 “RayTrace(光线追踪)” 的实现 【GLSL】
  13. VS studio源代码管理辅助工具sourceoffsite使用过程中的错误解决方法
  14. 【模板】线段树 2 洛谷P3373
  15. python根据词向量计算相似度_如何使用gensim的word2vec模型和python计算句子相似度...
  16. 一劳永逸的解除ByondCompare4注册问题
  17. android相册幻灯片功能,玩机教程 篇四十五:「MIUI玩机技巧63」MIUI相册新增“幻灯片播放”功能...
  18. 2016 年 50 个最佳的轻量级 JavaScript 框架和库一
  19. Git连接远程仓库(私有/公开仓库),克隆代码
  20. TP-LINK路由器作为副路由器之Lan接口连接详解

热门文章

  1. 江苏自考计算机专业,2021年江苏自考本科专业选择:计算机类专业前景如何?有哪些科目?...
  2. 企业微信Robot(群聊机器人)消息推送Java服务
  3. 接近开关 NPN 与 PNP的区别
  4. 悬赏任务源码系统带app小程序源码基于php开源版
  5. 无线连接网络找不到计算机组,Win10电脑找不到自家Wifi无线网络解决方法 可能是无线信道问题...
  6. 【MySQL】exists与in的比较
  7. 计算机word页面设置A5,word页面缩放怎样设置
  8. CentOS安装YAPI
  9. lvds输入悬空_低压差分信号LVDS学习笔记-模拟/电源-与非网
  10. 怎样用EXCEL对数值型字段进行分组?