2017-02-14 1 views
0

select2は、ページをリフレッシュする際に複数のドロップダウンデータが混在することを望ましくありません。 select2ドロップダウンは状態を維持する必要があります私はしたくないselect2 multi selectページをリフレッシュする際に緩やかなデータをドロップする。 select2ドロップダウンで状態を維持する必要があります

以下が私のコードです。私はページをリフレッシュしても、ページをリフレッシュした後でさえも、そこに値を削除してはいけない、または空であることが問題です。select2が選択/データを失っているという問題があります。

$processOrderNbr.select2({ 
 
      ajax: getProcessOrderNbr(), 
 
      minimumInputLength: 4, 
 
      placeholder: " ", 
 
      allowClear: false, 
 
      multiple: true 
 
     }); 
 

 
     function getProcessOrderNbr() { 
 
      return { 
 
       url: 'GetProcessOrder', 
 
       dataType: 'json', 
 
       delay: 250, 
 
       data: function (params) { 
 
        return { 
 
         searchKeyword: params 
 
        }; 
 
       }, 
 
       results: function (data) { 
 
        return { 
 
         results: $.map(data, function (item) { 
 
          return { 
 
           text: item, 
 
           id: item 
 
          } 
 
         }) 
 
        }; 
 
       } 
 
      }; 
 
     }

答えて

0

あなたはselect2ボックスに再びそれらを配置する必要があります。 同様の問題が発生しました。ここではwindow.sessionStorageを使用して選択した値を保存しています。あなたはこのコードを使用することができますwindow.sessionStorageに値を格納するために

var selectionList = [{ id: window.sessionStorage.getItem("searchValue"), text: window.sessionStorage.getItem("searchValue")}]; 
$("#searchValue").select2({ 
       data: selectionList 
}); 
$('#searchValue').val(window.sessionStorage.getItem("searchValue")).trigger("change"); 

:ページをリロードした後、私はこのコードでselect2ボックスにセッションストレージに格納されている値を設定し

たぶん
$('#searchValue').select2({ 
... 
.on("change", function (e) { 
    window.sessionStorage.setItem("searchValue", $(this).val()); 
} 
... 

このソリューションはあなたの場合に役立ちますが、誰かがより良い解決策を知っていますか?

関連する問題