Как проверить select2 на наличие ошибки - Невозможно прочитать свойство 'length' из неопределенного - PullRequest
1 голос
/ 05 марта 2020

Форма, которую я использую, имеет выпадающий список select2, который заполняется как

 $('.DropdownPINOption').select2({
     placeholder: '-- Select your PIN --',
     allowClear: true,
     tags: true,
     data: data.data.Table
 });

, и проблема возникла, когда я перенес данные из другой базы данных. Поскольку значение, которое я пытаюсь заполнить в этом раскрывающемся списке, либо равно нулю, либо не будет значением в поле моего раскрывающегося списка.

Это мой код

 if (data.data.Table[0].Current_Permanent_Overseas_Address_PIN_Code != null)
    $("#4txtPin").val(data.data.Table[0].Current_Permanent_Overseas_Address_PIN_Code).change();

, который выдает ошибка: Невозможно прочитать свойство 'length' со значением NULL

Итак, я сделал это:

$('#4txtPin option').each(function () {
   if (this.value == data.data.Table[0].Current_Permanent_Overseas_Address_PIN_Code) {
       $("#4txtPin").val(data.data.Table[0].Current_Permanent_Overseas_Address_PIN_Code).change();
   }
});

Ошибка не отображается и работает, как ожидалось. Но это не правильно. Есть ли лучшее решение для select2? Как я могу показать заполнитель, когда приходит недопустимое значение?

...