2017-11-13 3 views
1

Okay, was ich versuche zu tun, ist folgendes: Wenn der Eingang 'autoPack' leer ist, zeigen Sie die div'forma_reservas_gustos'. Wenn es nicht leer ist, zeigen Sie nicht die div. Das Problem, das ich habe, ist, dass, egal was der Wert von input ist, die div immer angezeigt wird. Ich habe so viele Dinge ausprobiert, aber nichts scheint zu funktionieren.Ng-Show zeigt div egal was

HTML:

<input type="hidden" name="autoPack" id="autoPack" ng-model="autoPack" value=""> 

<div class="forma_reservas_gustos" ng-show="!autoPack"> 
    <div class="forma_reservas_gustos_interior wid1k pbot20"> 
    <div class="paso"> 
     <div class="butpasos"> 
     <img src="/wp-content/uploads/2017/08/uno.png" /> 
     </div> 
     <div class="textpasos"> 
     <h3>SELECCIONA EL PACK DE EXPERIENCIAS QUE MÁS TE GUSTE</h3> 
     </div> 
    </div> 
    [...] 

JS

document.forms["forma_reservas_form"].autoPack.value = "xxxx"; 

Wenn ich es mit Google Developer Tools überprüfen, die html input hat den Wert 'xxxx' haben. Es ist also in der Tat nicht leer, deshalb sollte die div nicht angezeigt werden, es ist aus irgendeinem seltsamen Grund. Kann mir jemand helfen?

+1

'autoPack' sollte eine Eigenschaft von' $ scope' sein ... nicht nur eine Eigenschaft in einem Formular. Können Sie Ihren Controller-Code anzeigen? –

+0

ng-show = "autoPack.length == 0" funktioniert auch nicht. Es zeigt dann nie das div, auch wenn es leer ist. : S – JJCarlk3

+1

Omg, du hast recht Steve Ich hatte den Controller komplett vergessen ... es funktioniert jetzt! Vielen Dank!!! – JJCarlk3

Antwort

1

Sieht aus wie autoPack muss eine Eigenschaft von $scope sein ... nicht nur eine Eigenschaft auf dem Formular.

... 
$scope.autoPack = "xxxx"; 
... 
Verwandte Themen