を変更することなく、スコープの問題をngが-含まれ、このようになります私のテンプレートで選択ボックスがあります。(私のコントローラでは、今テンプレート
<div ng-include="'/views/program/program.html'"></div>
:
<form name="myForm" class="fixed-select">
<select name="repeatSelect" id="repeatSelect"
ng-model="selectedItem">
<option ng-repeat="program in programs"
value="{{program.name}}">
{{program.name}}
</option>
</select>
</form>
は私のテンプレートはちょうどこのですそれをMyCtrlと呼ぶ)selectItemを設定して、正しいものにロードさせることができます:
$scope.selectedItem = "Manage";
しかし、sele親のスコープ(ng-includeを持つテンプレートの現在のコントローラ(MyCtrl))には結びついていないと思うので、ctboxは手動で何も起こりません。
私はこれを修正する方法を探していましたが、$ parentや何かを含むようにテンプレートを変更することについてのいくつかのオプションがあります。それは本当に必要ですか?私は、ng-includeが既存のデータをカプセル化するための素晴らしい方法であり、変更なしで再び使用できることを期待していました。 ng-includeスコープをコントローラ(MyCtrl)に接続するにはどうすればよいですか?
お読みいただきありがとうございます。
EDIT1: 選択ボックスを移入されていることを「プログラム」は、文字列の配列だけです:[「メイン」、「など」]
「ng-repeat」の代わりに、オプションリストに対して行われた 'ng-options'を使うようにselectを変更することから始めたいかもしれません。 – Claies
以前はng-repeatを使っていましたが、問題はありませんでした。 ng-optionsがデフォルトのオプションを壊してしまいました。 – iamsampsan
あなたはあなたが記述している振る舞いを検証できるように、質問を 'programs'配列の内容で少し更新することができますか? – Claies