2011-09-09 80 views
0

首先,我想爲模棱兩可的標題道歉:) 其次,我是一個jQuery新手。使用一個對象的值作爲另一個對象的名字

我有一個下拉兩個值(「taget1」和「target2」)。在頁面加載時,我將localStorage設置爲每個目標的URL(target1 = google.com和target2 = gmail.com)。

當下拉更改時,我在localStorage(lastSelection = target2)中設置了「lastSelection」var。

現在,我也想從localStorage獲取相關的URL。所以當我更改爲「target2」時,我想從localStorage中獲取已保存的URL。而不是使用「如果」,我想我可以使用下拉的val()。

這不起作用:

var url = localStorage.getItem([lastSelection]) 

我如何使用lastSelection的價值得到這樣localStorage.getItem('target2')結果?

+0

那麼,你可以使用'eval(lastSelection)',但這是一個不好的方法,原因有很多。 – Blazemonger

回答

0

看起來'target1'和'target2'是出現在下拉菜單中的文字。你可以使用:

var selectedText = $("#dropdownId option:selected").text(); 

如果他們指的選項,而不是文本的實際值,然後

var selectedValue = $("#dropdownId option:selected").val(); 

現在你可以使用selectedText或selectedValue,則它曾經一個你想作爲一個參數從本地存儲中獲取內容。

var url = localStorage.getItem(selectedText); 
0

val()會給你下拉選定的值。試試這個

localStorage.getItem($("dropdownSelector").val()); 

所以,如果你在dropdown選擇target1它會給你google.comtarget2它會給你gmail.com預期。

相關問題