• Linux
  • apache
  • centos
  • Git版本管理
  • Linux基本命令
  • linux配置与优化
  • Nginx
  • PHP
  • Redis
  • Supervisor
  • Swoole
  • windows
  • THINKPHP
  • 开发者手册
  • Chat GPT / Open Ai
  • 使用autocomplete完成自动提示,支持多行,使用jquery-ui1.12

    全屏阅读
  • 基本信息
  • 作者:
  • 作者已发布:925篇文章
  • 发布时间:2023年05月20日 22:00:54
  • 所属分类:html, Html5, javascript, WEB前端
  • 阅读次数:443次阅读
  • 标签:
  • 有时,项目中一个页面需要有多个自动提示功能,本文使用最新jquery-ui(1.12)演示了实现过程。

    一、参考地址

    https://jqueryui.com/autocomplete/#custom-data

    二、实现步骤

    直接上代码

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>jQuery-ui自动提示</title>
    <!-- 引入jQuery UI的css文件 -->
     <link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css" rel="external nofollow" >
    <!-- 引入jQuery的js文件 -->
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.12.3.js" ></script>
    <!-- 引入jQuery UI的js文件 -->
    <script type="text/javascript" src="http://code.jquery.com/ui/1.12.1/jquery-ui.js" ></script>
    </head>
    <body>
     
    <label>请输入:</label>><br>
    第一行:<input id="inputName1" name="language" type="text" onfocus="myHint('inputName1')">
    <br>
    第二行:<input id="inputName2" name="language" type="text" onfocus="myHint('inputName2')">
    <br>
    第三行:<input id="inputName3" name="language" type="text" onfocus="myHint('inputName3')">
    <br>
    <br>
    <div id="showMsg"></div>
    </body>
     
    <script type="text/javascript">
        var projects = [
            { value: "zhangsan", label: "张三" },
            { value: "lisi", label: "李四" },
            { value: "wangwu", label: "王五" },
            { value: "zhangemazi", label: "张二麻子"},
            { value: "zhangshanfeng", label: "张三丰" },
    { value: "zhangerfeng", label: "张二丰" },
            { value: "lixiaoba", label: "李小八"}
        ];
    $(document).ready(function(  ){
       myHint=function(hintId){
     
       $("#"+hintId).autocomplete( {
    source: function( request, response ) {
    var results = $.ui.autocomplete.filter(projects, request.term);
    response(results.slice(0, 3));//最多显示几条
    },
    messages:{
    //不显示提示,不加的话会有英文提示
    noResults:'',
    results:function(){}
    },
    focus: function( event, ui ) {
    $( "#"+hintId ).val( ui.item.label );
    return false;
    },
    select: function( event, ui ) {
                           $( "#"+hintId ).val( ui.item.label );
    $( "#showMsg" ).text( "您选择了:"+ui.item.value );
    return false;
    }
    }).autocomplete( "instance" )._renderItem = function( ul, item ) {
    //格式化
    return $( "<li style='background-color: white;'>" )
    .append( "<div>" + item.label + "</div>" )
    .appendTo( ul );
    };
    };
       
     
     
    });
     
    </script>
    </html>

    将以上代码保存到文本文件,然后把后缀改为html, 可直接在浏览器中运行。

    运行效果如下:

    image.png

    顶一下
    (0)
    100%
    订阅 回复
    踩一下
    (0)
    100%
    » 郑重声明:本文由mpxq168发布,所有内容仅代表个人观点。版权归恒富网mpxq168共有,欢迎转载, 但未经作者同意必须保留此段声明,并给出文章连接,否则保留追究法律责任的权利! 如果本文侵犯了您的权益,请留言。
  • 【上一篇】
  • 【下一篇】
  • 目前有 0 条留言 其中:访客:0 条, 博主:0 条

    给我留言

    您必须 [ 登录 ] 才能发表留言!