0
我有一個模型視圖,看起來就像是:選擇平變化將返回錯誤的值
var teamViewModel = {
teams: ko.observableArray([]),
selectedTeam: ko.observable({id: 1}),
clearTeams: function(){
this.teams.removeAll();
},
addTeam: function (id, name, isChecked) {
t = new team(id, name, isChecked);
this.teams.push(t);
}
};
我在這裏引用它:
<select id="teamNameLabel" date-theme="f" data-bind="options: teams, optionsText: 'id', value: selectedTeam"></select>
,當我選擇的球隊之一,我可以打一個按鈕:
<input id="TestButton" type="button" onclick="GetAllUsersByTeam()" value="Show Selected Team" />
,它會調用這個:
function GetAllUsersByTeam(){
var url = 'http://localhost/Service.svc/GetUsersByTeam/'+teamViewModel.selectedTeam().id;
var jqxhr =
$.getJSON(url,
function (data)
{
colleagueViewModel.clearColleagues();
$.each(data.GetUsersByTeamResult, function (key, val) {
colleagueViewModel.addColleague(val.FirstName, val.LastName, val.EmailAddress, val.PhoneNumber, val.LocationName, val.CapabilityId, val.CoeId);
});
ko.applyBindings(colleagueViewModel, document.getElementById("colleaguesListView"));
})
}
這個工程就像我想要的一樣。但我想改變,以便GetAllUsersByTeam()被稱爲onchange。但是:
<select id="teamNameLabel" date-theme="f" onchange="GetAllUsersByTeam()" data-bind="options: teams, optionsText: 'id', value: selectedTeam"></select>
總是1個ID晚。例如,當我選擇1它的id是1,2 id是1,3 id是2 ... 我該如何解決這個問題?