ng repeatを使用して作成されたダイナミックリストを使用しています。各項目にはクリックがあります。しかし、フォームを表示させるコンディションがあるアイテムはほとんどなく、フォームのサブミットは再びクリックされます。 ここに私のHTMLがあります。ネストされたng-click引数が未定義
<div>
<div class="dropdown">
<span class="dropdown-toggle" data-toggle="dropdown">Services
<span class="caret"></span></span>
<ul class="dropdown-menu list-group">
<li>
<div class="input-group">
<input type="text" placeholder="Search" ng-model='dfilter.Name' class="form-control">
</div>
</li>
<li class="divider"></li>
<li class= "service_list_li" ng-repeat="d in services | filter:dfilter" ng-click="hitDrupal(d.Name,d.endpoint,d.api)">{{ d.Name }}</li>
</ul>
</div>
<div>
<form name="dynamic_fields">
<input type="text" ng-model="drupDynam.one" ng-if="drupal_dynamic1">
<input type="text" ng-model="drupDynam.two" ng-if="drupal_dynamic2" >
<input type="submit" ng-disabled="dynamic_fields.$pending" ng-click="goDynamic(drupDynam)" value="Go!" ng-show="drupal_dynamic1">
</form>
</div>
</div>
そして、ここでJSです:
$scope.hitDrupal = function(Name,endpoint,api)
{
$scope.drupal_dynamic1 = false;
$scope.drupal_dynamic2 = false;
if (endpoint=='login') {
//Do something
}
else if (Name == 'New') {
$scope.drupal_dynamic1 = true;
$scope.goDynamic = function(drupDynam)
{
dynamic_api = api + '/' + drupDynam.one;
console.log(dynamic_api);
//Do Something
}
}
else
{
//Do Something
}
}
だから、問題は私がhitDrupal機能のためのすべての引数を取得しています。すなわち名前、エンドポイント、およびAPIです。しかし、第2のngclickの引数、すなわちdrupDynamに対して未定義を得る。
私は、comleteオブジェクトの代わりに個々の変数を渡そうとしました。 ng-clickではなくng-submitを使用しました。 しかし、助けはありません。
最初の方法が機能しました。しかし、私の懸念は、なぜ議論が空でないのかということです。それは時計に関連するものであり、サイクルを適用しますか?いくつかの実装上の問題があります。ありがとうとにかく – ronit
@ronitそれはseperatelly調べる必要があります。私にとっては、あなたが問題にしているコードからは分かりません。あなたがPlunker/fiddle/demoを作成すると、私はあなたのための調査をすることができます。 – dhilt
No Probs ...とにかく... Thanxx – ronit