亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 select2 用多維數組中的數據填充下拉列表

使用 select2 用多維數組中的數據填充下拉列表

隔江千里 2023-12-14 14:09:05
我發送兩個屬性的響應數據如下:response["gender"] = 'Male' #Or whatever is the value from databaseresponse["gender_choices"] = [  [, '-----------------'],  ['MALE', 'Male'],  ['FEMALE', 'Female'],  ['OTHERS', 'Others']]我在用select2。我現在的代碼如下:$('.element-form#gender').select2({    placeholder: "Gender",    data: $.map(response.gender_choices, function(obj){        obj.value = obj[0];        obj.text = obj[1];        return obj.value, obj.text;      }    ),});但它正在將obj.text值添加到選項 value和text。我想要的是將的值添加obj.value到option value和obj.texttext 。另外我怎樣才能使response["gender"]選項選定值?
查看完整描述

1 回答

?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

您可以用于.val(yourgendertobeselected)設置 select-box 的選定值。此外,您需要用于.trigger('change')將此更改更新為 select-box 。然后,為了設置value和text使用id&text并在那里添加值,即 : item[0],item[1],..etc。


演示代碼:


var response = {

  "gender": "Male",

  "gender_choices": [

    ['', '-----------------'],

    ['MALE', 'Male'],

    ['FEMALE', 'Female'],

    ['OTHERS', 'Others']

  ]

}


$('#gender').select2({

  placeholder: "Gender",

  data: $.map(response.gender_choices, function(item) {

    return {

      text: item[0], //option text(MALE,FEMALE..)

      id: item[1] //option value(male,female..)

    }

  }),

  width: "100px"

});

var selected = response.gender //gendere to set

$('#gender').val(selected).trigger('change'); //set gender selected

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<link rel="stylesheet" href="https://rawgit.com/select2/select2/master/dist/css/select2.min.css">

<script src="https://rawgit.com/select2/select2/master/dist/js/select2.js"></script>

<select id="gender"></select>


查看完整回答
反對 回復 2023-12-14
  • 1 回答
  • 0 關注
  • 200 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號