2014-03-03 12 views
8

In angularjs möchte ich den Wert der versteckten Eingabe erhalten. wie die folgenden:Wie erhält man den Wert des versteckten Inputs mit angularjs?

<pre> 
<input type="hidden" name="captId" value="AqXpRshs9QHfxUbOWqMT" ng-model="captId"> 
</pre> 

Wie die „verborgenen Eingang“ Wert „AqXpRshs9QHfxUbOWqMT“ erhalten AngularJS unter Verwendung, AJAX oder jquery nicht.

+0

_ _ ok ... – gdoron

+1

'document.getElementById ("captId"). Value' – gdoron

+0

es ist viel besser, einen Eingang mit Geben Sie Text mit Anzeige: keine – Whisher

Antwort

23

Sie können ng-init verwenden, um den Wert zu initialisieren, damit er bei der Erstellung an Ihre Modellvariable gebunden wird.

<input type="hidden" name="captId" ng-init="captId='AqXpRshs9QHfxUbOWqMT'" ng-model="captId"> 

Oder Sie können es direkt, wenn alles andere fehlschlägt:

angular.element(document.getElementsByName('captId')[0]).val(); 
// or dont use angular at all 
document.getElementsByName('captId')[0].value 

Documentation for angular.element

+3

die zweite Möglichkeit, die Sie erwähnen, ist viel besser –

+0

@PascalLeMerrer vereinbart, ich denke, wenn Op die erste Methode verwenden sollte er/sie finden, dass der Wert auf eine leere Zeichenfolge festgelegt ist, weil es mit überschrieben würde der 'capID'-Wert, der wahrscheinlich leer ist. –

0

von ID

document.getElementById('yourId').value 

nach Name

document.getElementsByName('yourName')[0].value 

Halten Sie es "Ajax nicht" einfach :)

+1

Ihr Name sollte sein: 'document.getElementsByName ('IhrName') [0] .value' seit seit der [getElementsByName eine Sammlung zurückgibt] (https://developer.mozilla.org/en-US/docs/Web/ API/Dokument/getElementsByName) – grim

Verwandte Themen