国Q躺平中 2019-10-18 17:37 采纳率: 100%
浏览 289
已采纳

js 怎么控制搜索重复执行


    success: function(rdata) {
            //服务器返回响应,根据响应结果,分析是否登录成功;
            var data = eval("("+rdata+")");
            var swlist_data = data.body.dataStores.result.rowSet.primary;
            for(var i = 0; i < swlist_data.length; i++) {
                var swlist_title = swlist_data[i].title;
                var swlist_createTime = swlist_data[i].createTime;
                var create_DateTime = new Date(swlist_createTime).Format('yy-MM-dd hh:mm:ss');
                var swlist_procInstanceId = swlist_data[i].procInstanceId;
                var parent = document.getElementById("swyblistul");
                parent.innerHTML += "<li class=\"mui-table-view-cell mui-media\">" +
                    "<a class=\"mui-navigate-right\" onclick=\"swybxq('" + swlist_procInstanceId + "');\">" +
                    "<div class=\"list_ico mui-pull-left\">" +
                    "<span class=\"mui-icon-extra mui-icon-extra-order\"></span>" +
                    "</div><div class=\"mui-media-body\">" +
                    "<div class=\"mui-ellipsis\">" + swlist_title + "</div>" +
                    "<p>" + create_DateTime + "</p></div></a></li>";
            }
        }

这是Ajax 成功向div 中innerhtml 因为用的是+= 所以我点击一次搜索 就会执行一些显示重复的数据。
但是考虑到用户可能在我的这个页面进行多次搜索,所以不能去赋值为true 执行完在赋值 false 来控制 因为这样只会执行一次 ,用户多次搜索就不能实现
所以各位大佬 有什么好的办法 谢谢

  • 写回答

2条回答

  • Kevin.Y.K 2019-10-18 18:31
    关注

    不要循环追加,拼接好了一次显示,这样多次搜索就互补影响了

    var htmlStr="";
    for(var i = 0; i < swlist_data.length; i++) {
                    var swlist_title = swlist_data[i].title;
                    var swlist_createTime = swlist_data[i].createTime;
                    var create_DateTime = new Date(swlist_createTime).Format('yy-MM-dd hh:mm:ss');
                    var swlist_procInstanceId = swlist_data[i].procInstanceId;
                    var parent = document.getElementById("swyblistul");
                    htmlStr += "<li class=\"mui-table-view-cell mui-media\">" +
                        "<a class=\"mui-navigate-right\" onclick=\"swybxq('" + swlist_procInstanceId + "');\">" +
                        "<div class=\"list_ico mui-pull-left\">" +
                        "<span class=\"mui-icon-extra mui-icon-extra-order\"></span>" +
                        "</div><div class=\"mui-media-body\">" +
                        "<div class=\"mui-ellipsis\">" + swlist_title + "</div>" +
                        "<p>" + create_DateTime + "</p></div></a></li>";
                }
    
                parent.innerHTML = htmlStr;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 前台报错,加我微信帮我解决一下,15043457399
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题