2012-10-11 22 views
0

首先 - 我是一個總新手,並試圖在別人的代碼上工作,所以希望我會提供所有必要的信息。Jquery - 如何在顯示給用戶時顯示保存的數值的文本查找

我的jQuery手機應用程序將搜索參數作爲文本的數字表示存儲在本地存儲中,這是因爲後端的接口。搜索參數有三個問題,有6到15個不同的選項。客戶可以將搜索保存在他們的收藏夾中。我需要將這些數字轉換爲文字,以方便用戶使用。 我知道如何有不到兩個反應的反應轉換,但我不知道該怎麼做了三個或更多。

幾乎所有的內容都是通過Ajax動態生成的,所以jsFiddle是不可能的(至少對我而言;-)。

當返回的搜索結果(想尋找一個巡航的),下面的信息是通過這個命令存儲在本地存儲:

localStorage.search = JSON.stringify(searchParams); 

它存儲如下:

{「departuredate」:「」,「returned」:「」,「region」:「62224」,「price」:「4」,「duration」:「5」}

然後,將搜索保存爲「最愛」時,它存儲與以下命令:

{ 「搜索」:

localStorage.favorites = JSON.stringify(favorites); 

存儲在localStorage的一個喜歡的搜索的實施例{ 「62224:4:5 ::」:{「searchID 「:」 62224:4" , 「searchinfo」:{ 「departuredate」: 「」, 「returndate」: 「」, 「區域」: 「62224」, 「價格」: 「4」, 「持續時間」: 「5」 }}}}

這裏是我的檢索保存的搜索代碼:

>  $.each(searches, function(idx, searchFav){ 
>  var search = searchFav.searchinfo; 
>  var newSearchFav = template.clone().appendTo(disp); 
>  newSearchFav.attr('id', idx); 
>  $('#region', newSearchFav).html(search.region); 
>  $('#price', newSearchFav).html(search.price); 
>  $('#duration', newSearchFav).html(search.duration); 
>  $('#depart', newSearchFav).html((search.departuredate); 
>  $('#return', newSearchFav).append((search.returndate); 

使用示例在localStorage的保存的搜索的上方,在html頁面上面的代碼顯示如下:

  • 區域ID:62224
  • 價格ID:4
  • 持續時間ID:5
  • 離開ID:
  • 回報ID:

我想時間顯示爲 「14+之夜」,而不是基於以下查找表的「5」:

  • 0 =「任何夜晚!「
  • 1 = 」1-3之夜「
  • 2 = 」4-6之夜「
  • 3 = 」7-9之夜「
  • 4 = 」10-13之夜「
  • 5 = 「14+夜」

如果我只有兩個響應,我可以把在下面的(作爲一個例子)

search.duration = ((search.duration > 4) ? "14+ Nights" : "Any"); 
$('#duration', newSearchFav).html(search.duration); 

和任何值4或以下竟被d顯示「任何」。但我不知道如何做兩個以上的迴應。

+0

什麼是 「本地存儲」,JavaScript的變量,餅乾......? –

+0

模板的HTML是什麼樣的? –

+0

jsfiddle可能是? –

回答

0

我解決了這個使用以下:

search.duration = (search.duration > 4) ? "14+ Nights" : (search.duration == 4) ? "10-13 Nights" : (search.duration == 3) ? "7-9 Nights" : (search.duration == 2) ? "4-6 Nights" : (search.duration == 1) ? "1-3 Nights" : "Any Duration"; 
相關問題