2017-11-07 1 views
0

私は邪魔しています。現在のインデックスでラベルを追加するには、どうすればいいですか? 新しいng-repeatアイテムのインデックスを取得するにはどうすればよいですか?

は現在、私は持っている:私は追加機能を変更しようとしている

$scope.setups = []; 

$scope.add = function() { 
$scope.setups.push({ 
    panelVal: "", 
    spacingVal: "", 
    lotsVal: "", 
    panelPlaceholder: "Panels per lot", 
    spacingPlaceholder: "Between frames (mm)", 
    lotsPlaceholder: "Number of Lots" 
    }); 
}; 

$scope.remove = function(array, index){ 
array.splice(index, 1); 
} 

$scope.add = function (index) { 
$scope.setups.push({ 
    label: "Setup "+index, 
    panelVal: "", 
    spacingVal: "", 
    lotsVal: "", 
    panelPlaceholder: "Panels per lot", 
    spacingPlaceholder: "Between frames (mm)", 
    lotsPlaceholder: "Number of Lots" 
    }); 
}; 

しかし、インデックスが定義されていません。私はセットアップのインデックスを取得する必要がありますと仮定しています。または、現在の長さだけを増やして1つずつ増やすこともできます。最高の解決策は何でしょうか?

+0

あなたは、私がNG-クリックで私のボタンは、外NGリピートコンテナのあることを追加している必要があります申し訳ありませんが、 ''

Priz

+0

などのインデックスを取得するために '$ index'を使用することができます。 – Ryan

+0

問題が解決しましたか? – Priz

答えて

0

私はそれが他の人を助けている場合、私は回避策を管理しました。ラベルを追加するには、全長を取得してから、削除機能に追加してアイテムを削除し直します。

$scope.setups = []; 

$scope.add = function (array, index) { 

arrlength = array.length; 
arrlength++; 

array.push({ 
    label: "Setup "+arrlength, 
    panelVal: "", 
    spacingVal: "", 
    lotsVal: "", 
    panelPlaceholder: "Panels per lot", 
    spacingPlaceholder: "Between frames (mm)", 
    lotsPlaceholder: "Number of Lots" 
    }); 
}; 

$scope.remove = function(array, index){ 
array.splice(index, 1); 

labels = document.getElementsByClassName("setup-label"); 

for(var i = 0; i < labels.length; i++) 
{ 
    labels[i].textContent="Setup "+i; 
} 
} 
関連する問題