2016-05-16 69 views
0

我正在通過離子形式創建應用程序,並與Laravel服務器一起工作。 問題是,我有一個項目列表存儲在我的服務器。在離子應用程序中,我將要求從服務器獲取信息以創建表單。我有我的代碼在這裏,AngularJS:以一種形式綁定不可預知的輸入量

<div ng-repeat="itemGroup in mydata"> 
    <div class="item item-divider nn-card-header"> 
     {{itemGroup.name}} 
    </div> 
    <ion-list> 
     <ion-item ng-repeat="item in itemGroup.items"> 
      <h3>{{ item.name }}</h3> 
      <div class="item range range-positive"> 
       broken 
       <input type="range" id="{{ item.idgB }}" min="0" max="{{ item.max }}" ng-model="item.idgB" ng-init="item.idgB=0"> 
       {{ item.idgB }} 
      </div> 
      <div class="item range range-positive"> 
       missing 
       <input type="range" id="{{ item.idgM }}" name="volume" min="0" max="{{ item.max }}" ng-model="item.idgM" ng-init="item.idgM=0"> 
       {{ item.idgM }} 
      </div> 
     </ion-item> 
    </ion-list> 
    </div> 

mydata是這樣的JSON數據:

[{ 
    "name":"name", 
    "items":[{ 
     "id":1, 
     "name":"itemA", 
     "max":2, 
     "idgM":"m.3.1.1", 
     "idgB":"b.3.1.1" 
    }] 
}] 

我的問題是,我不知道如何從輸入獲得的價值,因爲我不能使用jquery找到元素。我有一個想法,我將從服務器的所有項目的唯一ID列表發送到應用程序。但我不知道如何通過使用字符串變量來得到ng-model數據。

回答

0

你並不需要jQuery來獲取從輸入值,你有你的對象數組,你是循環:

itemGroup.items 

,並在你的代碼你綁定陣列的每個對象:

ng-repeat="item in itemGroup.items" 
ng-model="item.idgB" 
ng-model="item.idgM 

然後我希望有這些值作爲idgB和您的itemGroup.items數組的每個元素的屬性idgM

,但由於使用的是:

ng-repeat="itemGroup in mydata" 

中的ItemGroup(S)本身是mydata數組的元素,然後在你的才能訪問這些輸入數據控制器,你應該有這樣的事情:

angular.forEach(mydata, function(itemGroup, key) { 
    angular.forEach(itemGroup, function(item, key) { 
    console.log("First input value: " + item.idgB); 
    console.log("Second input value: " + item.idgM); 
    }); 
}); 
+0

感謝您的回答。但我仍然有一個問題,無論如何,我可以使用''''scope.name'''',而將''''''''''作爲一個字符串變量。 –

+0

當然,您的控制器中的$ scope.name綁定到您的視圖的{{name}}對於Knighty Ra: – ShinDarth

0

來自輸入的值存儲在模型中,因此您不需要查找已使用綁定的元素 。

下面是如何在角使用輸入幫助: https://docs.angularjs.org/api/ng/directive/input

+0

另外,告訴我您要在何處以及如何使用此輸入值。 –

+0

我想通過ajax發送所有的值到服務器,當點擊一個按鈕。我不知道如何去做所有這些事情。感謝您的幫助。 –

+0

您必須將mydata發回服務器。 mydata將具有所有新值,但我不知道如何爲「Laravel服務器」執行此操作,因爲我不使用它。 這是你要檢查的內容 http://stackoverflow.com/questions/31454024/how-to-send-data-from-angular-js-to-laravel-5-server –