Когда я очищаю опцию, выберите onChange снова не работает - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть этот код:

success: function (data) {
                $('#' + idDivRefresh).endLoading();
                if (data.message != '@Geral.Sucesso') {
                    $('#' + idDropDown + 'option:selected').prop("selected", false)
                    $('#input-' + idDropDown).val('');
                    $('#' + idDropDown + 'option').each(function () {
                        if (this.defaultSelected) {
                            this.selected = true;
                            return false;
                        }
                    });
                    alert(data.message);
                }
            }

Я очищаю выбранную опцию в раскрывающемся списке.Но когда я снова выбираю другой параметр, функция onChange не работает.

HTML

<div id="iddb78e" class="field-Small">
    <select data-val="true" data-val-number="The field Ente must be a number." id="iddb78e" name="fornecedorVerbal.IdEnteIniciativaInvestment" style="display: none;">
    <option value=""> </option>
    <option value="4">30B66 - BUY CHANGES</option>
   </select>
    <input class="dropdown" type="text" id="input-iddb78e" autocomplete="off"></div>

Script OnChange

<script language="javascript" type="text/javascript">
    $("#iddb78e select")
        .change(function () {
            Tst(53287)
        })
        .loadOptions('/Tst/Method/ListarJsonEnte?IdIniciativa=2105')
        .turnAutoComplete();
</script>

Что не так?

1 Ответ

0 голосов
/ 07 февраля 2019

Селектор CSS, который вы создаете со следующим выражением:

'#' + idDropDown + 'option'

... станет ...

'#iddb78eoption'

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

То, что вы действительно хотите - это пробел (или знак больше, чем):

'#iddb78e option'

Поэтому добавьте этот пробел следующим образом:

'#' + idDropDown + ' option'

В вашем коде есть два места, где это должно произойти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...