2016-11-23 86 views
0

我的選擇外觀上的文本框NG-模型值頁面加載的基礎是這樣的:動態選擇選項時,在角

<select onchange="getVideo()" id="region"> 
    <option ng-repeat="items in region" ng-selected = "items.countryCode === selectedRegion" value="{{items.countryCode}}">{{items.countryCode}}</option> 
</select> 

這是我的JSON:

$scope.region = [ 
    { 
     countryItem : "TW(TW)", 
     countryCode : "tw_zh_tw" 
    }, 
    { 
     countryItem : "US(EN)", 
     countryCode : "us_en" 
    }, 
    { 
     countryItem : "US(ES)", 
     countryCode : "us_es" 
    }, 
    { 
     countryItem : "JP(JA)", 
     countryCode : "jp_ja" 
    }, 
]; 

當選擇框改變,它會調用一個函數getVideo()函數:

function getVideo() { 
var language = $("#region option:selected").val(); 
location.href="/support/"+language+"/Videobackstage; 
} 

使用此函數,頁面始終會在選擇變長時加載es,所以即使頁面加載,我也需要保留select的值。

爲了解決我提出的解決方案,我使用文本框ng模型作爲ng選擇條件的參數,文本框有一個值,它以我想要的方式工作,但對於選擇它是不工作:

<input type="text" ng-model="selectedRegion" id="selectedRegionx"> 

我通過在URL中得到一個特定的值設置文本框的值:

$(document).ready(function(){ 
var pageUrl = window.location.pathname; 
var split = pageUrl.split("/"); 
var langUrl = split[2]; 
$("#selectedRegionx").val(langUrl); 
}); 

回答

0

我做全局變量,可以通過角控制器訪問:

var pageUrl = window.location.pathname; 
var split = pageUrl.split("/"); 
var langUrl = split[2]; 

我只是在我的控制器增加了一個範圍:

$scope.selectedRegion = langUrl; 

現在工作得很好!