[操作疑難] select2 Ajax selected

https://select2.org/data-sources/ajax
var option = new Option(data_text, data_id, true, true);
$('select').append(option).trigger('change');

請問各位ching
select2 ajax  除左上面種方法去設selected
可唔可以齋用val去set??
同時要val& option好麻煩~"~
many thanks

唔係好明你問題

TOP

唔係好明你問題
清仔 發表於 2018-5-30 00:17


https://jsfiddle.net/rLmztr2d/1365/

select2用remote data可唔可以好似上面咁set val就得? many thanks

我依家要咁先做到,好麻煩????
var option = new Option(data_text, data_id, true, true);
$('select').append(option).trigger('change');

TOP

select2用remote data可唔可以好似上面咁set val就得? many thanks

我依家要咁先做到,好麻煩????
var ...
carlkyo 發表於 2018-5-31 17:31


https://select2.org/data-sources/arrays

TOP

select2用remote data可唔可以好似上面咁set val就得? many thanks

我依家要咁先做到,好麻煩????
var ...
carlkyo 發表於 2018-5-31 05:31 PM


你想做到個dropdown preselect左?
都仲係唔係好明你想做到d咩

TOP

本帖最後由 carlkyo 於 2018-6-2 14:06 編輯
你想做到個dropdown preselect左?
都仲係唔係好明你想做到d咩
清仔 發表於 2018-6-1 02:03


嗯dropdown preselect
我又試左一堆都唔得
唔係ajax source就可以
https://jsfiddle.net/7srqrxxu/204/
  1. //$('select').val('Yogesh').trigger('change');
  2.                         //$('select').val(1);
  3.                         //$('select').val('1').trigger('change');
  4.                         //$("select").select2("val", ["Yogesh"]);
  5.                         //$('select#User').val(1).select2();
  6.                         //$('select#User').val(1).trigger('change');
  7.                         //var ident = '3';
  8.                         //$('select option[value="' + ident +'"]').prop("selected", true);
  9.                         //$('select').val('1').trigger('change.select2');
複製代碼
係ajax source下面既先做到preselect
  1. var option = new Option('Yogesh', 1, true, true);
  2.                         $('select').append(option).trigger('change')
複製代碼
有冇簡單D直接set val就可以
many thanks

TOP

首先我覺得你要明個code係做緊咩

var option = new Option('Yogesh', 1, true, true); //Create一個option既element,preselected
你console.log(option ); 會得到:<option value="1" selected="">Yogesh</option>
係create個element果時…佢already select左…

$('select').append(option).trigger('change');
就係話append 黎個option element 去個dropdown果度
再trigger等佢rerender一次

其實你照用.val() 都係可以work
但前題係個option element already加左入去個dropdown裡頭

再正常d黎講….append(option) 其實唔算係AJAX.,係叫Dynamic option creation
你再參考下黎度:https://select2.org/tagging

TOP

本帖最後由 carlkyo 於 2018-6-4 12:01 編輯
首先我覺得你要明個code係做緊咩

var option = new Option('Yogesh', 1, true, true); //Create一個option ...
清仔 發表於 2018-6-2 22:04



    many many many many thanks ching
我唔想preselect時同時用到value & option
想好似平時咁唔理option係麥
直接set value
不過唔知點解ajax post出來既option一定同時要有value & option先set到
  1.     var option = new Option('Yogesh', 1, true, true);
  2.                            
複製代碼

TOP

回覆 8# carlkyo

不如你貼埋Ajax個code出黎…

TOP

本帖最後由 carlkyo 於 2018-6-5 08:37 編輯

回覆 9# 清仔
many thanks
  1. $("#select2").select2({
  2.   ajax: {
  3.    url: "data.php",
  4.    type: "post",
  5.    dataType: 'json',
  6.    delay: 250,
  7.    data: function (params) {
  8.     return {
  9.       searchTerm: params.term
  10.     };
  11.    },
  12.    processResults: function (res) {
  13.      return {
  14.         results: res
  15.      };
  16.    },
  17.    cache: true
  18.   }
  19. });
複製代碼
試左好多得呢個可以presetset到
  1. var option = new Option(option, value, true, true);
  2. $('#select2').append(option).trigger(‘change’);
複製代碼
可能要用 initSelection method

TOP