Div не отображается, даже если я делаю его видимым: true в Knockout.js

Приведенный ниже Div не отображается, даже если я делаю его видимым: true

        <div id="filterPart" data-bind="visible:$root.shouldShowDropDown" > 
        <section class="individual t-padding1 t-border">
            <g:render template="/admin/adminMessageDropDownMenu"/>
        </section>
        </div>

Я устанавливаю значение true в файле .js, как показано ниже.

self.shouldShowDropDown(true);

но все же Div не становится видимым. Думаю, мне следует исправить что-то вроде

<div id="filterPart" data-bind="visible:$root.shouldShowDropDown,valueUpdate:[]" >

valueUpdate в привязке данных, чтобы отразить значение (я имею в виду сделать видимым)? Я не получаю именно то, что мне нужно написать....


person kumar    schedule 06.03.2014    source источник
comment
Почему вы используете модификатор $root здесь? Вы в контексте ребенка наблюдаемы? valueUpdate используется для элементов ввода, чтобы изменяться при обновлении наблюдаемого во время ввода, поэтому он не используется, как вы предполагаете.   -  person xdumaine    schedule 06.03.2014
comment
Покажите код для просмотра модели, потому что то, что у вас есть, должно работать. Происходит что-то еще, чего мы не видим. Кроме того, проверьте консоль на наличие сообщений об ошибках.   -  person Matt Burland    schedule 06.03.2014
comment
Существует множество причин, по которым это может привести к сбою: 1. В вашем CSS есть правило, переопределяющее поведение с помощью !important 2. У вас есть ошибки привязки 3. Привязки никогда не применялись 4. self не является корневым уровнем модели представления это связано с этой частью пользовательского интерфейса 5. На самом деле div виден, но все его содержимое скрыто с помощью других JS/CSS 6. И многое, многое другое. Чтобы быть более конкретным, нам нужно больше кода, и вы также должны использовать что-то вроде инспектора элементов, чтобы увидеть, какой CSS применяется к div.   -  person Hans Roerdinkholder    schedule 06.03.2014


Ответы (1)


Привет, друзья, это произошло из-за сбоя кода, поскольку код не выполнялся полностью. Возникла проблема с сетью, запрос POST завершался ошибкой, поэтому данные из базы данных не извлекались, поэтому приложение не работало должным образом.

person kumar    schedule 12.03.2014