zoukankan      html  css  js  c++  java
  • easyui里弹窗的两种表现形式

    1、主JSP页面中描绘弹窗

    Html代码

    <div id="centerDiv" data-options="region:'center',border:false">
    <table id="networkQueryGrid"
    data-options="queryForm:'#queryForm',title:'查询结果',iconCls:'pag-list'"></table>
    </div>

    <div id="restartDialog" class="easyui-dialog" title="重新启动网络" style=" 400px; height: 180px;"
    data-options="iconCls:'pag-list',modal:true,collapsible:false,minimizable:false,maximizable:false,resizable:false,closed:true">
    <div style="margin-left: 5px;margin-right: 5px;margin-top: 5px;">
    <div class="data-tips-info">
    <div class="data-tips-tip icon-tip"></div>
    此网络提供的所有服务都将中断。请确认您确实要重新启动此网络。
    </div>
    <table style="margin-top: 20px;margin-left:20px;margin-right:20px;vertical-align:middle;" width="80%" border="0" cellpadding="0" cellspacing="1">
    <tr>
    <td style="20%;text-align:right;">
    清理:
    </td>
    <td style="text-align:left;">
    <input type="hidden" id="networkId" name="networkId"/>
    <input type="checkbox" id="cleanUp" name="cleanUp"/>
    </td>
    </tr>
    </table>
    <div style="text-align:right;margin-right:30px;">
    <a href="#" class="easyui-linkbutton" data-options="iconCls:'ope-finish'" onclick="restartNetwork()">确定</a>
    <a href="#" class="easyui-linkbutton" data-options="iconCls:'ope-cancel'" onclick="cancel()">取消</a>
    </div>
    </div>
    </div>

    JS:

     

    function showRestartDialog(id){
    $("#networkId").val(id);
    $("#restartDialog").dialog('open');
    }

    function restartNetwork(){
    cancel();
    var checked = $("#cleanUp").prop("checked");
    invokeAjax('/network/restartNetwork','networkId=' + $("#networkId").val() + '&cleanUp='+checked,'重新启动');
    }

    function cancel(){
    $('#restartDialog').window('close');
    }

    2.直接在JS里绘制弹窗(弹窗为单独页面文件)

    Html代码 

    <div id="toolbar" style="text-align:right;">
    <a href="#" class="easyui-linkbutton" data-options="iconCls:'ope-finish'" onclick="associateIP()">获取新IP</a>
    </div>

    JS:

    function showPublicIpDialog(row){
    var networkId ;
    var zoneId = row.zoneId;
    var virtualMachineId = row.id;
    if(row.nics && row.nics.length > 0){
    networkId = row.nics[0].networkId;
    }

    var ipHref = _root +'/vm/viewAllocateIP?networkId='+networkId+'&zoneId='+zoneId;
    $dialog = $('<div/>').dialog({
    title: '分配公网IP',
    400,
    height: 250,
    iconCls : 'pag-search',
    closed: true,
    cache: false,
    href: ipHref,
    modal: true,
    toolbar:'#toolbar',
    onLoad:function(){
    //设置其他数据
    $("#zoneId").val(row.zoneId);
    if(row.nics && row.nics.length > 0){
    $("#networkId").val(row.nics[0].networkId);
    }
    },
    buttons : [ {
    text : '确定',
    iconCls : 'ope-save',
    handler : function() {
    var $radio = $("input[type='radio']:checked");
    var iPAddressId = $radio.val();
    if($radio.length == 0 || iPAddressId == ""){
    $.messager.alert('提示', '请选择IP','info'); return;
    }

    $.ajax({
    url: _root + "/vm/enableStaticNat",
    type: "post",
    data: {virtualMachineId:virtualMachineId,iPAddressId:iPAddressId},
    dataType: "json",
    success: function (response, textStatus, XMLHttpRequest) {
    if(response!=null && response.success){
    $.messager.alert('提示','分配公网IP成功','info',function(){
    $dialog.dialog('close');
    $obj.SuperDataGrid('reload');
    });

    }else if(response!=null&&!response.success){
    $.messager.alert('提示','分配公网IP失败','error');
    }
    }

    })
    }
    }, {
    text : '取消',
    iconCls : 'ope-close',
    handler : function() {
    $dialog.dialog('close');
    }
    } ]

    });

    $dialog.dialog('open');

    }

    function associateIP(){
    ...
    }

    Controller:

    /**
    * 跳转到弹窗页面
    */
    @RequestMapping(value = "/viewAllocateIP", method = {RequestMethod.GET,RequestMethod.POST})
    public ModelAndView viewAllocateIP(@RequestParam String networkId,@RequestParam String zoneId) {
    ModelAndView model = new ModelAndView();
    model.setViewName("vm/allocateIP");

    try {
    Set<PublicIPAddress> ips = virtualMachineService.listPublicIpAddresses(networkId,zoneId);
    model.addObject("ips", ips);
    } catch(BusinessException e) {
    throw new ControllerException(HttpStatus.OK, e.getCode(), e.getMessage());
    } catch(Exception e) {
    final String msg = messageSource.getMessage(TipsConstants.QUERY_FAILURE);
    throw throwControllerException(LOGGER, HttpStatus.OK, null, msg, msg, e);
    }

    return model;
    }

    Html代码 

    <body>
    <input type="hidden" name="zoneId" id="zoneId" />
    <input type="hidden" name="networkId" id="networkId" />

    <div class="easyui-layout" data-options="fit:true" style="padding: 0px;">
    <div data-options="region:'center',border:false">
    <c:if test="${!empty ips}">
    <table class="ipTable" width="95%" border="1" borderColor="#DEDEDE" cellpadding="0" cellspacing="0">
    <c:forEach items="${ips }" var="item">
    <tr>
    <td style=" 35px; text-align: center;"><input type="radio" value="${item.id }" name="ids" /></td>
    <td style="padding-left: 35px; font-size: 13px;">${item.IPAddress }</td>
    </tr>
    </c:forEach>
    </table>
    </c:if>
    </div>
    </div>
    </body>

  • 相关阅读:
    原型1
    可参考的gulp资源
    手机端rem自适应布局实例
    页面变灰效果
    图片上传
    angular学习笔记
    远程页面调试
    drag
    真的了解JS么?
    发现意外之美
  • 原文地址:https://www.cnblogs.com/huangf714/p/5863861.html
Copyright © 2011-2022 走看看