angularjs 的模型沒法綁定到隱藏域(input hidden)

描述一下問題:git

在操做表單中的隱藏域的時候發現angularjs的模型沒法綁定,好比:angularjs

<input type="hidden" name="someData" ng-model="data" />

在網上找到了解決辦法,特地記錄;原文:http://stackoverflow.com/questions/18446359/angularjs-does-not-send-hidden-field-valuegithub

這種一般狀況下data一直沒法取到值;express

有如下幾種解決辦法:ui

1,this

<input type="text" name="someData" ng-model="data" style="display: none;"/>

2,spa

<input type="hidden" required ng-model="data.userid" ng-init="data.userid=pivot.id" />

3,.net

<input type="hidden" name="someData" value="{{data}}" />

4,code

<input type="hidden" name="someData" ng-value="data" />

 

最優回答以下:blog

You cannot use double binding with hidden field. The solution is to use brackets :

<input type="hidden" name="someData" value="{{data}}" /> {{data}}

EDIT : See this thread on github : https://github.com/angular/angular.js/pull/2574

EDIT:

Since Angular 1.2, you can use 'ng-value' directive to bind an expression to the value attribute of input. This directive should be used with input radio or checkbox but works well with hidden input.

Here is the solution using ng-value:

<input type="hidden" name="someData" ng-value="data" />

Here is a fiddle using ng-value with an hidden input: http://jsfiddle.net/6SD9N

相關文章
相關標籤/搜索