5
検索機能のために私のページにmvcパーシャルコントロールを2回使用しました。 それは私のページが同じ名前の2つのコントローラを持っているので、それ自身のコントローラを検索することがあります。同じコントローラがページ内で2回使用されている場合、モデルは互いに反映されなくなります
<div ng-app="app" ng-controller="MainController" ng-init="SetSearchParam()">
<div id="search1">
@Html.Partial("_SearchPartial") // say it search1
// some other code to show search results
// ....
// ..
</div>
<div id="search2">
@Html.Partial("_SearchPartial") // say it search2
// some other code to show search results
// ....
// ..
</div>
</div>
これは_SearchPartialある:
<form name="SearchCommon">
<div ng-model="search" ng-controller="SearchPartialController">
<div>
<input type="text" value="" placeholder="Stock" ng-model="search.Stock" />
</div>
<div>
<input type="text" value="" placeholder="Make" ng-model="search.Make" />
</div>
<div>
<input type="text" value="" placeholder="Year" ng-model="search.Year" />
</div>
<div>
<input type="submit" value="SEARCH" ng-click="searchdata(search)" />
</div>
</div>
</form>
すぐMainController
のINITに、iは以下のようSetSearchParam()
方法でsearch
モデル値を設定:
$scope.SetSearchParam = function(){
var s = {};
s.Make = "Test";
s.Year = "2012";
s.Stock = "5"
$scope.search = s;
};
search
としてモデルSearchPartialController
で使用され、ページには2つの検索制御があり、値はs
ですコントローラ。また、私がsearch1のparamsを変更すると、search2も反映されます。
これらの検索パラメータはsearch1にのみ設定し、search2には設定しないでください。 search1パラメータを変更すると、search2を反映してはなりません。逆も同様です。
これを達成する方法はありますか?