静态网页+layui渲染

html代码

 <div class="layui-form-item">
  <label class="layui-form-label">选择框</label>
  <div class="layui-input-block">
   <select id="t" name="quiz2">
    <option value="">请选择市</option>
    <option value="2">杭州2</option>
    <option value="3">杭州3</option>
    <option value="4">杭州4</option>
    <option value="5">杭州5</option>
   </select>
  </div>
 </div>

js代码

<script>
  // 遍历select
  $("#t").each(function() {
    // this代表的是<option></option>,对option再进行遍历
    $(this).children("option").each(function() {
      // 判断需要对那个选项进行回显
      if (this.value == 2) {
        console.log($(this).text());
        // 进行回显
        $(this).attr("selected","selected");
      }
    });
  })
</script>

动态网页+layui渲染(级联下拉列表)

后台将第一个下拉列表的数据传到前台

public String getApiInfoByTypePage(@PathVariable String type, Model model, HttpServletRequest request) {
    List<DopApiType> typeList1 = apiService.findApiTypeByPid(1);
    log.error(typeList1);
    model.addAttribute("typeList1", typeList1);
}

前台页面用的是Thymeleaf的遍历将数据加载出来,然后layui自动渲染

<div class="layui-input-inline">
      <select id="quiz1" name="quiz1" lay-filter="quiz1">
        <option value="1">请选择一级服务目录</option>
        <option th:each="list1:${typeList1}" th:value="${list1.typeId}" th:text="${list1.typeName }"></option>
      </select>
    </div>
    <div class="layui-input-inline" lay-filter="inline1">
      <select id="quiz2" name="quiz2" lay-filter="quiz2">
        <option value="0">请选择二级服务目录</option>
      </select>
    </div>

一级下拉列表的监听事件

 //监听一级服务目录下拉列表的选择时间
    form.on('select(quiz1)', function (data) {
      
      var pId = data.value;// 一级列表的id
      $.post('/getApiTypeByPid', {'pId': pId, '': 2}, function (msg) {// 请求二级列表的数据
        // console.log(msg);
        $('#quiz2').empty();// 将二级列表的内容清空
        for (var i in msg) {// 遍历数据赋值给二级列表的内容
          var $content = $('<option value="' + msg[i].typeId + '">' + msg[i].typeName + '</option>');
          $('#quiz2').append($content);
        }
        form.render('select');// 注意:数据赋值完成之后必须调用该方法,进行layui的渲染,否则数据出不来
      });
    });

数据回显的核心逻辑(java的根据目录格式,自行编写)

js部分

// 服务目录的数据回显
    var sesType = [[${type}]];
    var sesType1 = [[${type1}]];// 一级目录id
    var sesStatus = [[${status}]];
    // 一级目录回显
    $("#quiz1").each(function () {// 遍历select
      $(this).children("option").each(function () {// 遍历option
        if (this.value == sesType1) {// 跟后台传过来的id相同就显示selected
          // console.log("一级目录"+$(this).text());
          $(this).attr("selected", "selected");
          $.post('/getApiTypeByPid', {'pId': sesType1, '': 2}, function (msg) {// 根据一级目录的id获取二级目录的信息
            // console.log(msg);
            $('#quiz2').empty();// 清空
            for (var i in msg) { // 遍历,进行赋值
              if (msg[i].typeId == sesType) {// 判断要回显的二级目录
                var $content1 = $('<option value="' + msg[i].typeId + '" selected="selected">' + msg[i].typeName + '</option>');
                $('#quiz2').append($content1);
              } else {
                var $content = $('<option value="' + msg[i].typeId + '">' + msg[i].typeName + '</option>');
                $('#quiz2').append($content);
              }
 
            }
            form.render('select');// 注意:一定要调用该方法进行中心渲染,否则数据是显示不出来的
          });
        }
      });
    });

以上这篇基于layui的下拉列表的数据回显方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。