• Uep弹窗showModalDialog的使用


    function imageMaintain() {
    $.showModalDialog($$pageContextPath
    + "uepI/imageMaintain.do?servicecode="
    + ajaxform1.getColumnValue("serviceCode"), "上传图片", callback2,
    null, 450, 180, 2);
    }

    第一个参数为action?参数

    第二个参数为title

    第三个参数是回调函数

    第四个参数是回调方法的参数

    第五个参数是弹窗宽度

    第六个参数是弹窗高度

    第七个参数是弹窗的按钮 :

    设置值为0:没有按钮;设置值为1:显示确定按钮;设置值为2:显示取消按钮;设置值为3:显示确定、取消按钮,

    接下来根据功能介绍

    业务一

    必须执行保存后,点击添加联系人才能出现弹窗

    看点击事件的js方法

    function showKeyPerson(cell){

    if(unitGrid.isModified()){        //判断当前表格中是否有新添加数据、删除数据、修改数据


    $.alert("请先执行保存!");
    return;
    }
    $.showModalDialog($$pageContextPath + "setting/adMaintainperson.do?storeId="+ cell.storeId+"&storeUnitId="+cell.storeUnitId,"联系人信息维护",null,null,910,500,0) ;
    }

    <%

    String storeId = request.getParameter("storeId") == null ? "": request.getParameter("storeId");
    String storeUnitId = request.getParameter("storeUnitId")==null ? "": request.getParameter("storeUnitId");//属性标识


    %>
    <script type="text/javascript">
    var storeId = "<%=storeId%>";
    var storeUnitId = "<%=storeUnitId%>";

    </script>
    <script>
    function ajax_init(response) {
    var dataWrap = response.getAjaxDataWrap("dataWrap");
    ajaxgrid.setData(dataWrap);
    }

    /**
    * 查询
    */
    function retrieve() {
    var data = ajaxgrid.collectData(true, "all");
    var dataArr = [];
    dataArr.push(data);
    $.request({
    action : "retrieve",
    params : {
    "storeId" : storeId,
    "storeUnitId" : storeUnitId//这里一定要加参数,要不会报错
    },
    data : dataArr,
    success : ajax_init
    });
    }

    //添加
    function add(){

    $.request({
    action:"add",
    params : {
    "storeId" : storeId,
    "storeUnitId" : storeUnitId
    },
    success:onaddcomplete
    });
    }

    </script>

    对应action

    @Override
    public void retrieve() {

    try {
    if (storeId !=null && !storeId.equals("")) {
    QueryParamList paramList =new QueryParamList();
    paramList.addParam("storeId", storeId);
    paramList.addParam("storeUnitId", storeUnitId);
    List<MdmCompanyKeyPerson> list=JPAUtil.load(MdmCompanyKeyPerson.class, paramList, dataWrap.getSortOptions(),dataWrap.getPageInfo());
    if(list.size()>0){
    dataWrap.setDataList(list);
    responseData.setAjaxDataWrap("dataWrap", dataWrap);
    }
    responseData.setParameter("storeId", storeId);

    }
    } catch (Exception e) {
    e.printStackTrace();
    }
    }

    /**
    * 添加
    */

    public void add(){
    Long key = PrimarySequenceUtil.genEntitySequenceNo(MdmCompanyKeyPerson.class);

    MdmCompanyKeyPerson model=new MdmCompanyKeyPerson ();
    model.setKeyPersonId(key);
    model.setStoreId(storeId);
    model.setStoreUnitId(storeUnitId);
    model.setUseFlag("Y");
    model.setDefaultMark("N");
    dataWrap.setData(model);
    responseData.setAjaxDataWrap("dataWrap", dataWrap);
    }

    业务2

    例如 厂商(品牌)这个就是用弹窗来实现的

    点击触发事件如下:

    function formGongHuo() {
    var obj = {};
    obj.label = form_gonghuo.getSelectedLabel();
    obj.value = form_gonghuo.getSelectedValue();
    //$.showModalDialog(""+$$pageContextPath +
    // "common/cpm/inputbuttonselectcompany.do?comType=J","供应商选择",showFormGHCallback,obj,720,600,0);
    $.showModalDialog("" + $$pageContextPath + "common/getCompany.do?companyType=J", "供应商选择", showFormGHCallback, obj, 720, 600, 0);

    }

    进入action对应的jsp页面

    //确定
    function onConf(){
    var rec = ajaxgrid.getSelectedRecord();
    if (rec==null) {
    $.alert("请选择一条记录");
    return;
    };
    $.close(rec);
    }
    //取消
    function onConc(){
    $.close("-1");

    }
    //清空
    function onClear(){
    $.close("");

    回调函数如下:

    function showFormGHCallback(retStr, a, b) {// retStr为getCompany动作的返回值, a 为obj开始带入的参数,b为当前操作是否为取消操作,isCancel ==0时,表示是点击取消或点击弹出窗上关闭按钮关闭弹出窗

    if (b == 0 || retStr == "-1") {
    form_gonghuo.selectItem(a.value, a.label);
    } else if (retStr == "") {
    // form_gonghuo.selectItem(null, null);
    } else {
    form_gonghuo.selectItem(retStr.get("companyId"), retStr.get("unitName"));
    }
    }

  • 相关阅读:
    java封装
    本人的其他博客
    codeforces 1000C
    1005E1 Median on Segments (Permutations Edition) 【思维+无序数组求中位数】
    1009E Intercity Travelling 【数学期望】
    codeforces 1009D Relatively Prime Graph【欧拉函数】
    1077E Thematic Contests 【二分答案】
    codeforces 1077D Cutting Out 【二分】
    【非原创】ZOJ
    数字千万别用puts!
  • 原文地址:https://www.cnblogs.com/zhangzhiqin/p/8063929.html
Copyright © 2020-2023  润新知