<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JAVA涂鴉
    關于JAVA的點點滴滴
    posts - 50,  comments - 689,  trackbacks - 0
    基于網友的要求,我貼出在項目中用到的三級聯動的代碼:

    jsp的代碼:

    <%@?page?contentType?=?"text/html;?charset=GBK"??import="java.util.*,com.wehave.hyerp.procurement.domain.Cgsqd"%>
    <%@?taglib?uri="struts-html"?prefix="html"?%>
    <%@?taglib?uri="struts-logic"?prefix="logic"?%>
    <%@?taglib?uri="struts-bean"?prefix="bean"?%>
    <html>
    ????
    <head>
    ????????
    <title>?</title>
    ????????
    <link?rel?=?"stylesheet"?type?=?"text/css"?href?=?"../css/olstyle.css">????
    ????????
    <SCRIPT?type="text/javascript">
    ????????var?req;
    ????????window.onload
    =function(){
    ????????}

    ????????
    ????????function?Change_Select()
    ????????
    {
    ????????????var?zhi
    =document.getElementById('m_gykfwzlbb_lbbm').value;
    ????????????var?url
    ="sqdSelect.go?method=getSkill&id="+zhi;
    ????????????
    if(zhi=="0"){
    ????????????????alert(
    "請選擇您要察看的信息");
    ???????????????????
    return;
    ????????????}
    else{
    ????????????????
    if(window.XMLHttpRequest)
    ????????????????
    {
    ????????????????????req
    =new?XMLHttpRequest();
    ????????????????}
    else?if(window.ActiveXObject)
    ????????????????
    {
    ????????????????????req
    =new?ActiveXObject("Microsoft.XMLHTTP");
    ????????????????}

    ????????????????
    ????????????????
    if(req)
    ????????????????
    {
    ????????????????????req.open(
    "GET",url,true);
    ????????????????????req.onreadystatechange
    =callback;
    ????????????????????req.send(
    null);
    ????????????????}

    ????????????}

    ????????}

    ????????
    ????????function?Change_Select2()
    ????????
    {
    ????????????var?zhi
    =document.getElementById('m_lbbm_se').value;
    ????????????
    //alert(zhi.substring(0,2));
    ????????????if(zhi=="0"){
    ????????????????alert(
    "請選擇您要察看的信息");
    ???????????????????
    return;
    ???????????????}

    ????????????
    if(zhi.substring(0,2)=="WY"){
    ????????????????var?url
    ="sqdSelect.go?method=getSkill2&id="+zhi;
    ????????????????
    if(window.XMLHttpRequest)
    ????????????????
    {
    ????????????????????req
    =new?XMLHttpRequest();
    ????????????????}
    else?if(window.ActiveXObject)
    ????????????????
    {
    ????????????????????req
    =new?ActiveXObject("Microsoft.XMLHTTP");
    ????????????????}

    ????????????????
    ????????????????
    if(req)
    ????????????????
    {
    ????????????????????req.open(
    "GET",url,true);
    ????????????????????req.onreadystatechange
    =callback2;
    ????????????????????req.send(
    null);
    ????????????????}

    ????????????}
    else{
    ????????????????parent.topFram.location?
    ="sqdSelectAll.go?method=getlistAll&id="+zhi;
    ????????????}

    ????????}

    ????????
    ????????function?Change_Select3()
    ????????
    {
    ????????????var?zhi
    =document.getElementById('m_lbbm_th').value;
    ????????????
    //alert(zhi.substring(0,2));
    ????????????if(zhi=="0"){
    ????????????????alert(
    "請選擇您要察看的信息");
    ???????????????????
    return;
    ???????????????}
    else{
    ????????????????parent.topFram.location?
    ="sqdSelectAll.go?method=getlistAll2&id="+zhi;
    ????????????}

    ????????}

    ????????
    ????????function?callback()
    ????????
    {
    ????????????
    if(req.readyState?==?4)
    ????????????
    {
    ????????????????
    if(req.status?==?200)
    ????????????????
    {
    ????????????????????parseMessage();
    ????????????????}
    else{
    ????????????????????alert(
    "Not?able?to?retrieve?description"+req.statusText);
    ????????????????}

    ????????????}

    ????????}

    ????????
    ????????function?callback2()
    ????????
    {
    ????????????
    if(req.readyState?==?4)
    ????????????
    {
    ????????????????
    if(req.status?==?200)
    ????????????????
    {
    ????????????????????parseMessage2();
    ????????????????}
    else{
    ????????????????????alert(
    "Not?able?to?retrieve?description"+req.statusText);
    ????????????????}

    ????????????}

    ????????}

    ????????
    ????????function?parseMessage()
    ????????
    {
    ????????????var?xmlDoc
    =req.responseXML.documentElement;
    ????????????var?xSel
    =xmlDoc.getElementsByTagName('select');
    ????????????var?select_root
    =document.getElementById('m_lbbm_se');
    ????????????select_root.options.length
    =0;
    ????????????
    ????????????
    for(var?i=0;i<xSel.length;i++)
    ????????????
    {
    ????????????????var?xValue
    =xSel[i].childNodes[0].firstChild.nodeValue;
    ????????????????var?xText
    =xSel[i].childNodes[1].firstChild.nodeValue;
    ????????????????var?option
    =new?Option(xText,xValue);
    ????????????????
    try{
    ????????????????????select_root.add(option);
    ????????????????}
    catch(e){
    ????????????????}

    ????????????}

    ????????}

    ????????
    ????????function?parseMessage2()
    ????????
    {
    ????????????var?xmlDoc
    =req.responseXML.documentElement;
    ????????????var?xSel
    =xmlDoc.getElementsByTagName('select');
    ????????????var?select_root
    =document.getElementById('m_lbbm_th');
    ????????????select_root.options.length
    =0;
    ????????????
    ????????????
    for(var?i=0;i<xSel.length;i++)
    ????????????
    {
    ????????????????var?xValue
    =xSel[i].childNodes[0].firstChild.nodeValue;
    ????????????????var?xText
    =xSel[i].childNodes[1].firstChild.nodeValue;
    ????????????????var?option
    =new?Option(xText,xValue);
    ????????????????
    try{
    ????????????????????select_root.add(option);
    ????????????????}
    catch(e){
    ????????????????}

    ????????????}

    ????????}

    ????????
    ????????
    ????????
    ????
    </SCRIPT>
    ????
    </head>

    <body?bgcolor?=?"#C8D0D4">
    ????
    <html:form?action="/cgsqdNewAction.go">?
    ????
    <TABLE?class?=?"cbToolbar"?id?=?"idToolbar"?cellpadding?=?'0'?cellspacing?=?'0'>
    ????????
    <TR?align?=?"left"?valign?=?"top"?>
    ????????????
    <TD??NOWRAP>&nbsp;物質類別:&nbsp;&nbsp;
    ????????????????
    <html:select?property="m_gykfwzlbb_lbbm"?onchange="Change_Select()">
    ????????????????????
    <html:option?value="0">請選擇</html:option>
    ???????????????????????
    <html:options?collection="LbfList"?property="m_gykfwzlbb_lbbm"?labelProperty="m_gykfwzlbb_lbmc"/>
    ????????????????
    </html:select>?&nbsp;
    ????????????????
    <html:select?property="m_lbbm_se"?styleId="m_lbbm_se"?onchange="Change_Select2()">
    ????????????????????
    <html:option?value="0">&nbsp;&nbsp;&nbsp;</html:option>
    ????????????????
    </html:select>
    ????????????????
    <html:select?property="m_lbbm_th"?styleId="m_lbbm_th"?onchange="Change_Select3()">
    ????????????????????
    <html:option?value="0">&nbsp;&nbsp;&nbsp;</html:option>
    ????????????????
    </html:select>
    ????????????????
    ????????????
    </TD>
    ????????????
    ????????
    </tr>
    ????
    </table>
    ?????
    </html:form>
    </body>
    </html>

    action中的代碼:
    /**
    ?????*?
    ?????*?查詢物質編碼類別列表操作(一級)
    ?????*?
    */

    ????
    public?ActionForward?doSelectWzlb(
    ????????????ActionMapping?mapping,
    ????????????ActionForm?form,
    ????????????HttpServletRequest?req,
    ????????????HttpServletResponse?res)?
    {
    ????????HttpSession?session?
    =?req.getSession();
    ????????UserSession?userSession?
    =
    ????????????(UserSession)?session.getAttribute(
    "userSession");
    ????????permission.setUserID(userSession.getUserId());
    ????????permission.setUserName(userSession.getUserName());
    ????????permission.setModuleName(
    "m_cgsqd");
    ????????permission.setActionStr(
    "'m_select'");
    ????????
    if(permissionService.checkUserPermission(permission)){
    ????????????
    int?updateSign=0;
    ????????????
    try{
    ????????????????cgsqdService.updateCgsqwzhzb_sqsl();
    ????????????????updateSign
    =1;
    ????????????}
    catch(Exception?e){
    ????????????????e.printStackTrace();
    ????????????????updateSign
    =0;
    ????????????}

    ????????????
    if(updateSign==1){
    ????????????????List?LbfList
    =cgsqdService.treeListWzlb2();
    ????????????????req.setAttribute(
    "LbfList",LbfList);
    ????????????????
    return?mapping.findForward("tools");
    ????????????}
    else{
    ????????????????
    return?null;
    ????????????}

    ????????}
    else{
    ????????????
    return?mapping.findForward("failure");
    ????????}

    ????}

    ????
    ????
    /**
    ?????*?
    ?????*?查詢物質編碼類別列表操作(二級)
    ?????*?
    */

    ????
    public?ActionForward?doSelectWzlb1(
    ????????????ActionMapping?mapping,
    ????????????ActionForm?form,
    ????????????HttpServletRequest?req,
    ????????????HttpServletResponse?res)?
    {
    ????????HttpSession?session?
    =?req.getSession();
    ????????UserSession?userSession?
    =
    ????????????(UserSession)?session.getAttribute(
    "userSession");
    ????????permission.setUserID(userSession.getUserId());
    ????????permission.setUserName(userSession.getUserName());
    ????????permission.setModuleName(
    "m_cgsqd");
    ????????permission.setActionStr(
    "'m_select'");
    ????????
    if(permissionService.checkUserPermission(permission)){
    ????????????
    int?updateSign=0;
    ????????????
    try{
    ????????????????cgsqdService.updateCgsqwzhzb_sqsl();
    ????????????????updateSign
    =1;
    ????????????}
    catch(Exception?e){
    ????????????????e.printStackTrace();
    ????????????????updateSign
    =0;
    ????????????}

    ????????????
    if(updateSign==1){
    ????????????????List?LbfList
    =cgsqdService.treeListWzlb2();
    ????????????????req.setAttribute(
    "LbfList",LbfList);
    ????????????????
    return?mapping.findForward("tools1");
    ????????????}
    else{
    ????????????????
    return?null;
    ????????????}

    ????????}
    else{
    ????????????
    return?mapping.findForward("failure");
    ????????}

    ????}

    ????
    ????
    /**
    ?????*?
    ?????*?查詢物質編碼類別列表操作(三級)
    ?????*?
    */

    ????
    public?ActionForward?getSkill(
    ????????????ActionMapping?mapping,
    ????????????ActionForm?form,
    ????????????HttpServletRequest?req,
    ????????????HttpServletResponse?res)?
    {
    ????????HttpSession?session?
    =?req.getSession();
    ????????UserSession?userSession?
    =
    ????????????(UserSession)?session.getAttribute(
    "userSession");
    ????????permission.setUserID(userSession.getUserId());
    ????????permission.setUserName(userSession.getUserName());
    ????????permission.setModuleName(
    "m_cgsqd");
    ????????permission.setActionStr(
    "'m_select'");
    ????????
    if(permissionService.checkUserPermission(permission)){
    ????????????String?id
    =req.getParameter("id");
    ????????????
    ????????????res.setContentType(
    "text/xml;charset=GBK");
    ????????????res.setHeader(
    "Cache-Control","no-cache");
    ????????????String?xml_start
    ="<?xml?version=\"1.0\"?encoding=\"GBK\"?>";
    ????????????xml_start
    +="<selects>";
    ????????????String?xml_end
    ="</selects>";
    ????????????String?xml
    ="<select><value>0</value><text>請選擇</text></select>";
    ????????????String?m_lbbm_se
    ="";
    ????????????String?m_lbmc_se
    ="";
    ????????????List?LbfList
    =null;
    ????????????
    if(id.equals("WY")){
    ????????????????LbfList
    =cgsqdService.treeListWzlb3_2(id);
    ????????????}
    else{
    ????????????????LbfList
    =cgsqdService.treeListWzlb3_1(id);????
    ????????????}

    ????????????Iterator?it
    =LbfList.iterator();
    ????????????
    while(it.hasNext()){
    ????????????????Cgsqd?cgsqd
    =(Cgsqd)it.next();
    ????????????????m_lbbm_se
    =cgsqd.getM_gykfwzlbb_lbbm();
    ????????????????m_lbmc_se
    =cgsqd.getM_gykfwzlbb_lbmc();
    ????????????????xml?
    +="<select><value>"+m_lbbm_se+"</value><text>"+m_lbmc_se+"</text></select>";
    ????????????}

    ????????????String?last_xml
    =xml_start+xml+xml_end;
    ????????????logger.debug(
    "XML是:"+last_xml);
    ????????????
    try?{
    ????????????????res.getWriter().write(last_xml);
    ????????????}
    ?catch?(IOException?e)?{
    ????????????????e.printStackTrace();
    ????????????}

    ????????????
    return?null;
    ????????}
    else{
    ????????????
    return?null;
    ????????}

    ????}

    主要代碼就這些,去掉一些權限大代碼,真正的代碼并不多。
    posted on 2006-08-09 15:21 千山鳥飛絕 閱讀(13619) 評論(10)  編輯  收藏 所屬分類: Ajax

    FeedBack:
    # re: Ajax實現三級聯動下拉框
    2006-08-26 19:28 | yyw_1023
    高手就是高手!佩服佩服!!!!!!!!!!1  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框
    2006-09-15 11:18 | zch
    我按照你的方法做了下,在onchange的時候,報了一個這樣的錯誤~!
    no action instance /SeclectAll.do ...
    配置
    <action path="/SelectAll"
    type="com.hdtq.main.SelectAction"
    scope="request">
    <forward name="success" path="/MyLogin.jsp"/>
    ................
    請問這是怎么回事呢???
    ..
    var url="/teach/SelectAll.do?method=g1&id="+zhi;
    ....  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框
    2007-06-12 11:37 | 啊啊
    能不能用三維數組實現三級聯動阿?  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框
    2007-06-12 14:20 | 千山鳥飛絕
    @啊啊
    可以參考這篇文章:
    javascript實現二級聯動下拉框
    http://www.tkk7.com/rickhunter/articles/64607.html  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框[未登錄]
    2007-09-14 17:05 | liu
    我這里報錯,是Not able to retrieve descriptionUnkown  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框[未登錄]
    2008-05-09 10:07 | 七七
    支持一下,借用啦。  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框[未登錄]
    2008-10-25 12:52 | 紅狼
    請問你的UserSession是從哪得到的。能把詳細類創建寫一下嗎?Action怎么與頁面交互的?急求回答75974082@qq.com  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框
    2008-10-28 22:40 | wa
    javax.servlet.ServletException: javax.servlet.jsp.JspException: Cannot find bean under name LbfList
    為什么會這樣的啊?????????????  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框
    2008-12-28 20:25 | 盜版
    原創? 絕對的“原創”!!!!!!!!!!!  回復  更多評論
      
    # re: Ajax實現三級聯動下拉框
    2011-10-13 09:17 | tao
    厲害!我是新手。還得向您請教個問題。幫忙到我的看看我這段代碼。。。
    http://blog.csdn.net/myjsj_2006/article/details/6868701
    加載特別慢,能不能快點
      回復  更多評論
      
    正在閱讀:



    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(35)

    隨筆檔案

    文章分類

    文章檔案

    好友的blog

    我的其他blog

    老婆的Blog

    搜索

    •  

    積分與排名

    • 積分 - 775153
    • 排名 - 56

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲免费日韩无码系列| 亚洲人午夜射精精品日韩| 亚洲AV成人精品一区二区三区| 在线观看亚洲免费| 久久一区二区三区免费| 亚洲国产日韩在线人成下载| 国产一区二区三区在线免费| 最近免费字幕中文大全| 亚洲伊人色一综合网| 亚洲一区二区三区无码影院| 免费能直接在线观看黄的视频| 美女被暴羞羞免费视频| 亚洲AV福利天堂一区二区三| 免费激情视频网站| 怡红院免费全部视频在线视频| 亚洲情A成黄在线观看动漫软件 | 毛片在线看免费版| a免费毛片在线播放| 亚洲午夜精品在线| 国产精品亚洲一区二区三区在线| 无码少妇一区二区浪潮免费 | 午夜寂寞在线一级观看免费| 东方aⅴ免费观看久久av | 亚洲精品乱码久久久久久蜜桃不卡 | 精品多毛少妇人妻AV免费久久| 亚洲午夜久久久久久尤物| 亚洲一区二区三区在线播放| 性色av免费观看| 99久久免费观看| 久久久久免费视频| 亚洲精品国产第一综合99久久| 久久精品国产亚洲77777| 亚洲无码视频在线| 国产精品免费综合一区视频| av免费不卡国产观看| 国产免费拔擦拔擦8X高清在线人| 美女黄频免费网站| 亚洲AV无码精品国产成人| 亚洲国产精品午夜电影| 亚洲电影一区二区| 国产亚洲综合色就色|