使用ajax+jqtransform實現動態載入select_jquery

來源:互聯網
上載者:User

今天在工作的時候遇到一個問題,頁面中公司名稱是在項目名稱選擇後用ajax讀取出來的。但是jqtransform是在頁面載入完成後調用的,所以導致了公司名稱下拉框無法展示最新的資料。

<link rel="stylesheet" href="${ctx}/jqtransformplugin/jqtransform.css" type="text/css"></link> 
<script type="text/javascript" src="${ctx}/jqtransformplugin/jquery.jqtransform.js"></script>
<SCRIPT type="text/javascript">
        $(function(){
            $('form').jqTransform({imgPath:'images/JQueryformimg/'});
        });
</SCRIPT>

用firebug可以看到資料其實已經拼接上去了,但是form已經在頁面載入後已經調用過jqTransform方法, jqTransformSelectWrapper裡面的ul資料沒有更新。想了許久決定用簡單粗暴的方法把ul更新掉。

    function companyAjax(proid){ 
        $.ajax({ 
            type:"POST",
            url:"${pageContext.request.contextPath}/recordsearch/ajax/getCompanyAjax.do",
            dataType:"json",
            data:{proid : proid},
            success:function(jsondata){
                var tmp='';
                tmp+='<select id="centerid" name="centerid" onchange="comChange()" style="width: 160px;" name="centerid">';
                //$("#centerid").empty();                tmp+='<option value="">--請選擇--</option>';
                for(var i=0;i<jsondata.length;i++){
                    tmp+='<option value="'+jsondata[i].centerid+'">'+jsondata[i].centername+'</option>';
                }
                tmp+='</select>';
                $("#centerid").parent().remove();
                $("#comLable").after(tmp);
                $("#centerid").jqTransSelect();
            }
        });
    }

哈哈,在ajax查詢公司資料之後,將jqtransform產生的select相關的div刪除掉,然後把selct拼接上,再重新初始化select。方法比較蠢,不過先用著吧,以後有更好的辦法再說。

是不是很炫酷。。哈哈,其實還是jqtransform比較給力,小夥伴們以後需要使用類似效果的話,可以參考下。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.