1
我試圖設置ng-disabled
在我下面的代碼中的'保存'按鈕時遇到一個奇怪的問題。我希望我的輸入字段是必需的,並且是一個非負數。此代碼的結構很好,但是當我刪除表ng-disabled
下方的第二個表單時,它不再有效。爲什麼ng-disabled取決於這個完全不必要的額外形式,我純粹爲了臨時測試而添加了這個形式?ng禁用行爲奇怪
<div>
<table>
<tr>
<td><p>Limit</p></td>
<td><p>1,000,000</p></td>
<form class="form-inline" name="form">
<td>
<div class="form-group">
<input type="text" ng-pattern="/^[0-9][0-9]*$/" class="form-control" ng-if="limit.saveAllowed" ng-model="limit.user.points"
ng-required="true"></input>
</div>
<p ng-if="!limit.saveAllowed">{{limit.user.points}}</p>
</td>
<td ng-if="limit.saveAllowed">
<div class="form-group">
<button class="btn btn-success" type="submit" ng-click='limit.setLimit(limit.user.points)' ng-disabled="form.$invalid">Save</button>
</div>
</td>
</form>
</tr>
</table>
<form class="form-inline" name="form">
<input type="text" ng-model="limit.user.points"
ng-required="true"></input>
</form>
</div>
注:我使用的是controllerAs
語法,因此limit
指的是我的控制器。此外,這個HTML全部駐留在自定義指令的模板中。我不知道這些額外的信息是否有用,但我很難過。
你能爲這個問題創建plunkr嗎? –
不確定這是否是問題,但您的表單不是嵌套在''中,而是直接嵌入在不允許的'
這是問題 – SuperVeetz
回答
表單不能直接嵌套在
<tr>
內(請參閱this)。 只需用<td>
(或只是將其移動到<table>
之外)包裝表格,並且應該可以正常工作。來源
2015-08-27 18:51:56
相關問題