2014-12-11 31 views
0

我似乎無法讓我的div元素基於一個隱藏的輸入值,根據下面的代碼來顯示顯示div元素:AngularJS嘗試基於隱藏輸入值不工作

<form method="post"> 
    <fieldset data-ng-app=""> 
    <input type="hidden" id="Method" name="Method" value="1" data-ng-model="methodType" /> 
    <div data-ng-show="methodType=='1'">Method 1</div> 
    <div data-ng-show="methodType=='2'">Method 2</div> 
    </fieldset> 
</form> 

無的加載頁面時顯示div元素。當我將輸入的類型更改爲「文本」時,它似乎可以工作,但是我不得不手動輸入值,以便相應地顯示/隱藏。我可以得到這方面的幫助嗎?

+2

設置值不會自動ng模型,因爲這不是角度工作的方式。你通常不會處理價值,而只是處理模型和綁定...... – PSL 2014-12-11 01:17:32

+0

我也沒有看到我習慣看到的控制器定義。 – rchang 2014-12-11 01:20:38

+0

@rchang:我在WWW上看到過你不需要控制器的例子。此外,當我將輸入類型更改爲「文本」時它似乎工作。 – 2014-12-11 01:24:16

回答

2

角度不會識別將模型設置爲值,除非輸入與交互 - 例如在單選按鈕上。

如果您要做的是在負載上設置模型值,請將其設置在控制器中,或使用data-ng-init而不是隱藏輸入。

<form method="post"> 
    <fieldset data-ng-app="" data-ng-init="methodType = 1"> 
    <div data-ng-show="methodType == 1">Method 1</div> 
    <div data-ng-show="methodType == 2">Method 2</div> 
    </fieldset> 
</form>