テーブルの (.estimates) tbody に追加するディレクティブを使用する追加ボタンがあります。
function EstimateCtrl( $scope, $compile ) {
$scope.services = [
{ 'value': 'c', 'name': 'Standard Courier' },
{ 'value': 'xc', 'name': 'Express Courier' },
{ 'value': 'cc', 'name': 'Country Courier' }
]
$scope.add = function() {
angular.element('.estimates tbody').append( $compile('<tr estimate></tr>')($scope) );
}
}
angular.module('dashboard', [])
.directive('estimate', function() {
return {
restrict: 'A',
template: '<td><input type="text" placeholder="Suburb"/></td><td><select ng-model="estimate.service" ng-options="service.value as service.name for service in services" class="form-control"></select></td><td>$0.00</td><td><button type="button" class="remove">x</button></td>',
link: function( scope, element, attrs ) {
element.find('.remove').bind('click', function() {
element.closest('tr').remove();
});
}
}
});
angularjsでng-modelを使用して要素配列を作成するにはどうすればよいですか? 例えば:
<select name="foo[]"></select>
に
<select ng-model="foo[]"></select>
私は1日半掘り回っていますが、休憩をとることができないようです. 誰かが私を正しい方向に向けてくれることを願っていました。助けてくれてありがとう。
編集:これはプランカーへのリンクです。これを見た後、誰もが私が何をしているのかを知っていると確信しています: http://plnkr.co/edit/JlYB9P0vyAqghOmeNYh4
Edit2:私が何を求めているかを示すために、別の例をすべて挙げることができるかどうか見てみましょう
<form method="POST" action="">
<!-- I was attempting to do ng-model="estimate.service[]" but of course this doesn't work -->
<select name="estimate[service][]">
<option value="foor">Foo</option>
<option value="bar">Bar</option>
</select>
<select name="estimate[service][]">
<option value="foor">Foo</option>
<option value="bar">Bar</option>
</select>
<select name="estimate[service][]">
<option value="foor">Foo</option>
<option value="bar">Bar</option>
</select>
<input type="submit" value="Submit"/>
</form>
<?php
if ( $_POST )
{
print_r( $_POST['estimate']['service'] );
}
?>
出力