我得到了像這樣的非唯一選擇選項,相同的值意味着不同的事情。我們的數據是這樣的,我只能工作以適應數據。Angular2 RC2選擇選項selectedIndex
<select id="mySelect">
<option value = "1">Apple</option>
<option value = "2">Orange</option>
<option value = "3">Pineapple</option>
<option value = "1">Banana</option>
</select>
所以我可以通過設置selectedIndex來設置值。
document.getElementById("mySelect").selectedIndex = 3;
但在角2,我得到了這個說法錯誤「財產‘的selectedIndex’上鍵入‘HTML元素’。任何不存在」。
我如何找到用Angular2的selectedIndex或者我該如何解決它?
更新: 我想根據從數據庫檢索到的其他數據設置默認值到選擇選項。所以它就像
this.data$.subscribe(data => {
this.data = data;
if (data.someConditionMet) {
document.getElementById("mySelect").selectedIndex = 3;
}
},
error => this.errorMessage = <any>error);
請注意,選項中的值可能是重複的。但條目不是。值「1」可以代表「蘋果」或「香蕉」。這就是爲什麼我想使用索引而不是價值。
我不認爲它是重複的。請仔細閱讀。這是關於將默認值設置爲非唯一選項。 – Shawn
您需要投射文件。getElementById(「mySelect」)在嘗試使用selectedIndex屬性之前轉換爲HTMLSelectElement類: ( document.getElementById(「mySelect」))。selectedIndex = 3; –