2016-03-24 18 views
1

habe ich einen Drop-Down mit einem HTML-Wertänderungsergebnis, so dass nach jedem Klick ich den neuen HTML-Wert zu erhalten:Speicher neue Klick Änderung mit jQuery auf RELOAD (neue Seite)

$("#list li a").on('click',function(){ 
var val=$(this).html(); 
$("#selector").html(val); 
}); 

Einfach genug zu verstehen. Was ich versuche zu tun, ist im neuen Reload, das html (val) bleibt auf dem neuen Laden. Wie kann man das machen?

Ich dachte an HTML5: localStorage aber wirklich nicht sicher, ob das richtig ist?

localStorage.setItem(currentlist, $('#selector').val()); 

    window.onload = function() { 
     var name = localStorage.getItem(currentlist); 
    } 

Nicht sicher, ob ich das richtig mache oder etwas verpasse. Aber hier bin ich. Ist das der richtige Weg zu gehen ... oder einen Keks-Zustand zu machen?

+1

was 'currentlist'? ist es eine Schnur? – Krishna

+1

Localstorage ist definitiv Eine Möglichkeit, dies zu tun, aber funktioniert es oder haben Sie ein spezifisches Problem? – empiric

+0

Mögliche Duplikate von [Wie programmiere ich den Wert eines Select-Box-Elements mithilfe von Javascript?] (Http://stackoverflow.com/questions/78932/how-do-i-programatically-set-the-value-of- a-select-box-element-using-javascript) – Cory

Antwort

2

JSFIDDLE DEMO

$("#list li a").on('click',function(){ 
    var val = $(this).html(); 
    $("#selector").html(val); 
    localStorage.setItem("currentlist", val); //add to localStorage 
}); 

und in Ihrem onload

var name = localStorage.getItem("currentlist"); //get from localStorage 
$("#selector").html(name); //assign here 
+0

Was meinst du mit: '(Name)' wäre es nicht '(val)'? Weil es eine Mehrfachliste ist. – Riskbreaker

+0

'(Name)' ist nur die Variable, der Sie den Wert zuweisen, egal, wie Sie ihn benennen. – Jorrex

+0

@Riskbreaker - Ich verwende den gleichen Variablennamen aus der Frage, um Sie nicht zu verwirren. Im Idealfall könnten Sie einen besseren Namen verwenden und denselben für die Einstellung verwenden. – Krishna