• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

ajax结合模态框异步查询和传值的使用

武飞扬头像
罗毅是个大笨蛋
帮助1

添加员工信息前,异步查询公司部门,动态绑定到模态框selected-组件

一. js引入

  1.  
    <head>
  2.  
    <!-- 1. 导入CSS的全局样式 -->
  3.  
    <link href="${pageContext.request.contextPath}/css/bootstrap.min.css" rel="stylesheet">
  4.  
    <!-- 2. jQuery导入,建议使用1.9以上的版本 -->
  5.  
    <script src="${pageContext.request.contextPath}/js/jquery-2.1.0.min.js"></script>
  6.  
    <!-- 3. 导入bootstrap的js文件 -->
  7.  
    <script src="${pageContext.request.contextPath}/js/bootstrap.min.js"></script>
  8.  
    </head>

二. 前端代码按钮部分,点击此处弹出#myModal

  1.  
    1. 主jsp页面触发案件
  2.  
    <a class="btn btn-primary" id="selectdept" data-toggle="modal" data-target="#myModal">添加员工信息</a>
  3.  
     
  4.  
    2. modal定义
  5.  
    头部:<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
  6.  
     
  7.  
    select组件定义:
  8.  
    <div class="form-group">
  9.  
    <label for="dept_id">所属部门:</label>
  10.  
    <select name="dept_id" id="dept_id">
  11.  
    <option value="">请选择所属部门</option>
  12.  
    </select>
  13.  
    </div>
三. Script部分
  1.  
    $("#selectdept").click(function(){
  2.  
    //在弹出模态框之前需要发送ajax请求,查出部门信息并显示
  3.  
    getDepts();
  4.  
     
  5.  
     
  6.  
    });
  7.  
    //查出所有部门
  8.  
    function getDepts(){
  9.  
    $.ajax({
  10.  
    url:"${pageContext.request.contextPath}/employee/depts",
  11.  
    type:"GET",
  12.  
    success:function(result) {
  13.  
    $("#myModal select").append("")
  14.  
    $.each(result,function(){
  15.  
    let optionEle=$("<option></option>").append(this.dept_name).attr("value",this.dept_id);
  16.  
    optionEle.appendTo("#myModal select");
  17.  
    })
  18.  
    }
  19.  
    })
  20.  
    }
学新通

四,如果绑定更多组件值,比如update时将数据库相关字段值回显过去。

  1.  
    function Value(emp_id) {
  2.  
     
  3.  
    $.ajax({
  4.  
    url:"${pageContext.request.contextPath}/employee/findById2?id=" emp_id,
  5.  
    type:"GET",
  6.  
    success:function(result) {
  7.  
    // alert(JSON.stringify(result));
  8.  
    $.each(result[0],function(){
  9.  
    $("#emp_id2").val(this.emp_id);
  10.  
    $("#emp_name2").val(this.emp_name);
  11.  
    $("#job_date2").val(this.job_date);
  12.  
    $("#job_name2").val(this.job_name);
  13.  
    $("#telephone2").val(this.telephone);
  14.  
    });
  15.  
    $("#myModal2 select").append("");
  16.  
    $.each(result[1],function() {
  17.  
    let optionEle = $("<option></option>").append(this.dept_name).attr("value", this.dept_id);
  18.  
    optionEle.appendTo("#myModal2 select");
  19.  
    })
  20.  
    }
  21.  
    })
  22.  
    }
学新通

这里result本身是List<Object>,由两个不同的List类型组成,且后端采用@responseBody返回Json数据格式,括号中emp_id的传值如下。

<input class="btn btn-default btn-sm" type="button" id="updateBt" data-toggle="modal" data-target="#myModal2" onclick="Value('${employee.emp_id}')" value="修改">

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgchjkb
系列文章
更多 icon
同类精品
更多 icon
继续加载