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

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

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

    asdtiang的博客 感謝blogjava提供的博客交流平臺

    grails 實現級聯下拉列表

    Posted on 2010-08-10 11:22 asdtiang 閱讀(1657) 評論(1)  編輯  收藏 所屬分類: grails study
    不多說,可以實現多級,http://xihuyu2000.javaeye.com/blog/349722,這個地方可以實現兩級,但我這里可以實現多級,直接上代碼吧。

    說明,手機充值有服務商,面值,和區域,現在數據庫設計有點問題,不過能說明問題就行。

    class TelDeltaPro {
        String id 
        String name//服務商
        String area//區域
        String price//面值
        String goodId
        
    int sum//沖值總次數
        static mapping={
            id generator:
    'uuid'
        }

    }

    頁面主要代碼:
    <tr>
                
    <td><span class="indexText2">服務商</span></td>
                
    <td><g:select name="proName"
                    from
    ="${com.likai.asdtiang.domain.platform.TelDeltaPro.list()}"
                    optionKey
    ="name" optionValue="name"
                    onchange
    ="${remoteFunction(controller:'telDeltaPro', action:'price', params:'\'name=\'+this.value', update:[success:'price'])}"></g:select>
                
    </td>
            
    </tr>
            
    <tr>
                
    <td><span class="indexText2">面值</span></td>
                
    <td>
                
    <div id="price"></div>
                
                
    </td>
            
    </tr>
            
    <tr>
                
    <td><span class="indexText2">地區</span></td>
                
    <td>
                
    <div id="area"></div>
                
    </td>
            
    </tr>
            
    <tr>
                
    <td></td>
                
    <td><input type="submit" value="提交"></td>
            
    </tr>

    主要是onchange="${remoteFunction(controller:'telDeltaPro', action:'price', params:'\'name=\'+this.value', update:[success:'price'])}"這個地方,remoteFunction查下文檔就可以了。

    contorller主要代碼如下:
    def price={
            log.info params.name
    +"name"
            session.putValue 
    "telName",params.name
            def str
    ="""<select id="proName" name="price" onchange="${remoteFunction(controller:'telDeltaPro',
             action:
    'area', params:'\'price=\'+this.value', update:[success:'area'])}">"""
            def li
    =TelDeltaPro.findAllByName(session.telName)
            li.each{
                str
    =str+"""<option value="${it.price}">${it.price}</option>"""
            }
            str
    =str+"""</select>"""
            render(text:str,contentType:
    "text/html",encoding:"UTF-8")
        }
        def area
    ={
            log.info params.price
    +"    price"
            def str
    ="""<select  name="area" >"""
            def li
    =TelDeltaPro.findAllWhere(name:session.telName, price:params.price)
            li.each{
                str
    =str+"""<option value="${it.area}">${it.area}</option>"""
            }
            str
    =str+"""</select>"""
            render(text:str,contentType:
    "text/html",encoding:"UTF-8")
            
        }
    代碼應該很簡單的,看下就懂了。
    最后應該注意下:導入AJAX腳本,因為remoteFunction用到了AJAX
    <g:javascript library="prototype" />


    天蒼蒼,野茫茫,風吹草底見牛羊

    Feedback

    # re: grails 實現級聯下拉列表  回復  更多評論   

    2013-04-18 16:03 by 陳小龍
    it.area 能獲得值嗎 好像獲得不了

    posts - 80, comments - 24, trackbacks - 0, articles - 32

    Copyright © asdtiang

    asdtiang的博客 PaidMailz
    點擊廣告網賺A(每天4個廣告,每個0.0025美元,一個搜索廣告0.03美元)
    主站蜘蛛池模板: 色偷偷亚洲女人天堂观看欧| 亚洲人成伊人成综合网久久久 | 久久亚洲2019中文字幕| 激情亚洲一区国产精品| 免费成人福利视频| 亚洲一区二区三区亚瑟| 一个人免费观看www视频在线| 91丁香亚洲综合社区| 在线免费观看一级毛片| 久久精品国产亚洲AV天海翼| 女人18毛片水真多免费播放| 亚洲精品无码mⅴ在线观看| 成年男女免费视频网站| 亚洲国产成人久久精品软件 | 亚洲午夜AV无码专区在线播放| 白白色免费在线视频| 亚洲精品线路一在线观看| 一出一进一爽一粗一大视频免费的| 久久精品国产亚洲Aⅴ蜜臀色欲| 成人精品视频99在线观看免费| 亚洲精品乱码久久久久久按摩 | 免费视频爱爱太爽了| 亚洲国产精品一区二区三区在线观看| 性色av免费观看| 一个人免费观看www视频| 国产亚洲一区二区精品| 91短视频免费在线观看| 亚洲中文字幕AV每天更新| 亚洲第一页综合图片自拍| 中国一级特黄的片子免费 | 久久免费观看国产精品88av| 亚洲一卡二卡三卡| 国产国产人免费人成免费视频 | 狠狠色伊人亚洲综合网站色| 日韩在线视频免费看| 两个人看的www高清免费观看| 亚洲一级免费毛片| 亚洲国产精品日韩专区AV| 99视频精品全部免费观看| 亚洲精品理论电影在线观看| 中文字幕精品亚洲无线码二区|