2016-07-04 11 views
2

Ich bin an einem Punkt fest, wo ich alle Eingabeelement holen muss, wo die Aktion ausgeführt wird.So holen Sie alle Kinderelementeingabe

Beispiel: ist ein Behälter, in dem eine Anzahl n von Eingangselement wie Eingabetyp Text/Anzahl/Datum Optionsfeld etc (gerenderte dynamisch)

haben kann, und es gibt Sendeschaltfläche genannt in der gleicher Behälter. , wenn ich auf

  1. I Eltern von Submit-Button Element
  2. holen alle Element in diesem Container bekommen müssen
  3. Eltern einreichen klicken

Wie kann ich das tun?

Da ich dynamisch rendern kann, konnte ich keinen Bereich festlegen, auf den ich mit dem Bereich zugreifen kann.

+2

Fragen: 1. Verwenden Sie JQuery? 2. Können wir bitte einen Code für unsere Referenz sehen? –

+1

Klingt ziemlich einfach. Aber poste deinen HTML und JS . – dfsq

+1

Du solltest ng-form = "myparent" setzen, dann setze deine Eingabefelder wie ng-model = "myparent.firstname" und etc ... – Gopinath

Antwort

2

wenn Sie Jquery verwenden, können Sie es tun, wie folgt:

var $parent = $(button).parent(); 
var $inputs = $parent.find("input"); 

wenn Sie nicht jquery verwenden können Sie verwenden, um die folgenden:

var parent = buttonElement.parentElement; 
var inputs = parent.getElementsByTagName("input"); 
+0

Danke für die Antwort. Es funktioniert teilweise, aber ich wusste, wie man das macht –

1
<div> 
    <input type="text" id="txtName" value="Aslam"/> 
    <input type="radio" value="Select" /> 

    <input type="button" id="btnClick" value="Click Me!"/> 

</div> 
<script> 
    $("#btnClick").on('click', function() { 
     var parent = $(this).parent(); 
     var childrens = parent.children("input"); 

     childrens.each(function() { 
      switch (this.type) { 
       case 'text': 
        alert('Put text box logic'); 
        break; 
       case 'radio': 
        alert('Put radio box logic'); 
        break; 
        //Put other control 
       default: 
      } 
     }) 
    }); 
</script> 
1

erste Satz ng-Form und Zugang durch ng-Modell ... Dies ist die einfache Art, dies zu tun ...

<form ng-form="myparent"> 

    <input type="text" ng-model="myparent.firstname"/> 
    <input type="text" ng-model="myparent.lastname"/> 
    ... Etc 

    </form> 
+1

danke für die Antwort –

+0

Happy Coding :) – Gopinath

Verwandte Themen