ajax動態載入下拉框資料
阿新 • • 發佈:2019-01-24
下拉框—–ajax動態載入資料
嗨!這是我發表的第一篇部落格,希望對大家有所幫助,有什麼不對的地方還望校正!
jsp頁面(型別一)
<select class="form-control" name="orgName" id="select_orgName">
<option>--請選擇--</option> <!-- 這個option也可以寫在ajax中-->
</select>
獲取的資料是真實資料,是資料中的資料,然後從後臺進行資料回撥
ajax 程式碼塊
上個圖片,這裡斷了個debugger,查看回調的資料,資料顯示有兩條。
不過這裡的warehouse,我也一直沒有弄明白,找到很多都是這樣寫的,百度說了一大堆,反正就是一種解決方案
設定預設值(型別二)
當在作修改操作資訊的時候,先需要查詢所有的資訊,這是頁面中選擇框就需要進行判斷其中一個值是預設的
ajax 程式碼塊 —— 修改操作
//'修改操作,預設選中'
window.onload=function(){
var selectVal=${users.orgName} //"這不用管,這是獲取值,拿到你自己的值"
$.ajax({
timeout: 3000,
async: false,
type: "POST" ,
url: "${webroot}/user/orgList",
dataType: "json",
data: {
warehouse: $("#select_orgName").val(), //'選擇框id'
},
success: function (data) {
for (var i = 0; i < data.length; i++) {
$("#select_orgName" ).append("<option >" + data[i].orgName + "</option>");
//'在迴圈中設定 預設選中 為true'
if (select.options[i].value == selectVal){
select.options[i].selected = true;
}
}
}
});
}
上面 取值var selectVal= ${users.orgName},有時候來說是錯誤的寫法,這時候需要改變一下。我們把${users.orgName}這個值放到一個隱藏的標籤裡面,然後根據標籤id獲取值
頁面: <input type="hidden" name="orgName" id="selVal" value="${users.orgName}" />
js: var selectVal=("#selVal").val();
需要對value值進行判斷(型別三)
有時候,資料庫獲取的值是int型,但是頁面顯示的值卻是String型別,反正就是各種奇葩,兩種不同的值,第一想法是判斷。對,就是判斷,沒錯!!!
這裡是js
<select class="form-control" name="orgName" id="checke_val">
</select>
上面 這裡不需要你寫任何option標籤,當然也可以像前面寫上也可以,如果寫了後面就不用寫了
ajax 程式碼塊
window.onload=function(){
$.ajax({
type:"post",
async:false,
url:"${webroot}/admin/listType",
dataType:"json",
data: {
warehouse: $("#checke_val").val(),
},
success:function(rdata){
$("#checke_val").append($("<option value=''>全部</option>"));
var str="";
for(var i=0;i<rdata.length;i++){
if(rdata[i].isLottery==1){
str="已中獎";
}else if(rdata[i].isLottery==0){
str="未中獎";
}
$("#checke_val").append("<option value="+rdata[i].isLottery+">"+str+"</option>");
}
}
});
}
以上是我個人學到技術的分享,以後有好的技術還會繼續分享出來!!!