jsp 首页面向弹出层传值并回显;

来源:互联网 发布:mac写入不了移动硬盘 编辑:程序博客网 时间:2024/06/08 12:26

----------------展示页面----

<script type="text/javascript" src="${pages}/jslib/manage.js" charset="gbk"></script>

<c:url var="nps" value="pages/jsp/normparams.jsp"></c:url>

-----根据行业查指标

    function modelselect() {
        var codes = "";
        $('input[name="tradeCode"]').each(function() {
            codes = codes + ',' + $(this).val();
        });
        if(codes==""){
            alert("请先选择行业!");
            return false;
        }
        parent.fancybox_('${nps}?codes=' + codes, '选择指标', 800, 420);
    }

---

<tr>
                <td><c:url var="rlc" value="pages/jsp/rolelevelcs.jsp"></c:url>
                    <a href="#" onclick="parent.fancybox_('${rlc}','选择行业',400,320)">选

择行业</a></td>
                <td colspan="3">
                    <div id="aduithydiv"></div>
                </td>
            </tr>
            <!-- 开始 -->
            <tr>
                <td colspan="4"><a href="#" onclick="modelselect()">请确定指标参数</a></td>
            </tr>        
            <tr>
                <td colspan="4">
                    <!--这里可以存放 现实异步的数据 -->
                    <div id="normdiv">
                        <TABLE id="normtable" class="simpleTable insertTable">
                            <tr class="selectTr">
                                <th colspan="4">指标信息列表</th>
                            </tr>
                            <tr>
                                <td align="center">[全选]<input type="checkbox" id="box" onclick="checkAll()" value="f"/></td>
                                <td align="center" width="10%">指标名称</td>
                                <td>操作</td>
                            </tr>
                        </TABLE>
                    </div>
                </td>
            </tr>

----------------------home.js----------------------------------------------

function checkhangye(){
    var u=tree.getAllChecked();
    var codes=u.split(',');
    var name=new Array();
    var id=new Array();
    for(var i=0;i<codes.length;i++){
        id[i]=codes[i];
        name[i]=tree.getItemText(codes[i]);
        if(codes[i]=='0'){
            break;
        }
    }

    getmf().checkuphangye(id,name);
    $.fancybox.close();
}

function shownormparams(){
    var htmlpart="";
    $('input[name="normsids"]').each(function(){   
        if($(this).attr("checked")==true){
            htmlpart=htmlpart+"<tr>"+$(this).parent().parent().html()+"<td>"+"<a href=\"#\" onclick='deltr(this);'>删除</a>"+"</td>"+"</tr>";
        }
    });
    getmf().updatepart(htmlpart);
    $.fancybox.close();
};

--------------manage.js--------

function checkuphangye(id,name){
    var str='';
    for(var i=0;i<id.length;i++){
        str=str+"<input type='hidden' name='tradeCode'  value="+id[i]+">"+name[i]+"&nbsp&nbsp";
    }
    $("#aduithydiv").html(str);
}


function updatepart(htmlpart){
    $("#normtable").append(htmlpart);
};

-----------------------/rolelevelcs.jsp-------------------

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:url var="jslib" value="pages/jslib"></c:url>
<link type="text/css" rel="stylesheet" href="${jslib}/codebase/dhtmlxtree.css"/>
<script type="text/javascript" src="${jslib}/codebase/dhtmlxcommon.js"></script>
<script type="text/javascript" src="${jslib}/codebase/dhtmlxtree.js"></script>

<div class="ti_bg buttonTop" class="FancyboxTop">
<input type="button" class="submit" onclick="checkhangye()" value="确  定"/>
</div>
<p> </p>
<br/>
<div class="fancyboxScroll">
<div id="depttree" class="tpanel">
</div>
<!-- load dept tree -->
<c:url var="roottree" value="modellevelarea.htm">
<c:param name="tradeCode" value=""></c:param>
</c:url>
<c:url var="depttree" value="modellevelarea.htm">
<c:param name="tradeCode" value=""></c:param>
</c:url>
<script>
tree = new dhtmlXTreeObject("depttree", "100%", "100%", 0);
tree.setImagePath("${jslib}/codebase/imgs/csh_vista/");
tree.enableCheckBoxes(1);
tree.enableThreeStateCheckboxes(true);
tree.setXMLAutoLoading("${depttree}");
tree.attachEvent("onSelect",function(id){
    $("#parentId").val(id);
});
tree.loadXML("${roottree}",function(){    
});
</script>
</div>

自动加载树:通过url   ---modellevelarea.do跳到后台查询结果

--------------------------------------

回调xml页面--------------treexml.jsp-----------

<?xml version="1.0" encoding="UTF-8" ?>
<%@ page language="java" contentType="text/xml; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%-- ${hy.flag eq 0} --%>
<tree id="0">
<item text="所有" open="1" id="books"  im0="tombs.gif" im1="folderOpen.gif" im2="folderClosed.gif" >
<c:forEach var="hy" items="${hangye}" varStatus="status">
<c:choose>
<c:when test="${1==1}">
    <item text="${hy.tradeName}"

id="${hy.tradeCode}" child="0" im0="folderClosed.gif" im1="folderOpen.gif" im2="folderClosed.gif"

     tooltip="${hy.tradeName}">
     <userdata name="tradeCode">${hy.tradeCode}</userdata>
    </item>
    </c:when>
</c:choose>    
</c:forEach>
</item>
</tree>

-------

将查询出来的行业代码name 传到弹出页面normparams.jsp

通过  js方法 modelselect();

--------normparams.jsp页面

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:url value="pages" var="pages"></c:url>
<c:url var="jslib" value="pages/jslib"></c:url>
<link href="${pages}/css/xp.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
/*  */

function normdiv(url){
    var codes=$("#codes").val();
    var normName=$("#normName").val();
    $.get(url+'?normName='+normName+'&codes='+codes,null,function(data){
        $("#normdiv").html(data);
    });
}

</script>
<% String codes=request.getParameter("codes");%>
<br/>
<div class="fancyboxScroll" style="overflow-x:hidden" >
<form action="normparams.htm" id="mainFm" method="post">
<input type="hidden" name="codes" id="codes" value="<%=codes%>"/>
<table class="simpleTable insertTable">
            <tr class="selectTr">
            <td>指标名称</td>
             <td>
             <input name="normName" id="normName" type="text"/>
            </td>
            <td align="center" colspan="2">
            <c:url value="normparams.htm" var="nps"></c:url>
            <input type="button" onclick="normdiv('${nps}')"  value="查询" class="submit"/>
            </td>
            </tr>
       </table>
       </form>
<div class="ti_bg buttonTop" class="FancyboxTop">
 <input type="button" class="submit" onclick="shownormparams()" value="确  定 指 标"/>
</div>
<div id="normdiv">
</div>
<p> </p>

</div>

首先点击查询到后台查询要展示的信息到normpart.jsp;

--------------normpart.jsp---------------------

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<link href="${pages}/css/xp.css" rel="stylesheet" type="text/css" />
<script>
function checkAll(){
    var Allcheckbox=document.getElementsByName("normsids");

    var flag=document.getElementById("box").value;
    var result=new Array();
    if(flag=="f"){
    for(var i=0;i<Allcheckbox.length;i++){
    Allcheckbox[i].checked=true;
    result[i]=Allcheckbox[i];
    }
    document.getElementById("box").value="t";
    }else{
    for(var i=0;i<Allcheckbox.length;i++){
    Allcheckbox[i].checked=false;
    }
    document.getElementById("box").value="f";
    }

}
</script>
<TABLE class="simpleTable insertTable">
 <tr class="selectTr">
     <th colspan="4">指标信息列表</th>
  </tr>
            <tr>
               <td>[全选]<input type="checkbox" id="box" onclick="checkAll()" value="f"/></td>
                <td align="center">指标名称</td>
            </tr>
            
            <c:forEach items="${nf.result}" var="result" varStatus="vs">
            <tr>
<td align="center">
<input type="checkbox" name="normsids" value="${result.numId}" id="normsids">
</td>
<td align="center">${result.normName}</td>
</tr>
            </c:forEach>
</TABLE>

-------------
然后通过js方法   shownormparams()     截取html片段通过updatepart()回调到首页展示

function updatepart(htmlpart){
    $("#normtable").append(htmlpart);//截取的行加到表格里
};




原创粉丝点击