suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript – Verwenden von localStorage, um beim Klicken die oberste Zeile einer Tabelle zu erreichen und die Seite zu aktualisieren, um den aktuellen Status beizubehalten

Da zur Bestimmung der eindeutigen Zeile mindestens 3 Wertespalten erforderlich sind

Meine Idee ist also
1. Speichern Sie jedes Mal, wenn Sie auf die obere Schaltfläche klicken, die Werte der 3 Spalten (jede Spalte hat 1 Schlüssel) in der entsprechenden Zeile, was der Speichervorgang ist
2 Laden Sie die Seite neu und lesen Sie die lokalen Daten. Vergleichen Sie die drei Spalten jeder Zeile mit den vorhandenen lokalen Daten

Die obige Idee, jetzt ist mein Problem:

Nach mehreren Klicks sollte der Wert des Schlüssels, der jeder Spalte entspricht, mehr als eins sein.
Die for-Schleife ist nicht klar über die spezifische Verwendung

習慣沉默習慣沉默2741 Tage vor803

Antworte allen(2)Ich werde antworten

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-28 09:29:46

    其实你不用每列为一个Key存储的,可以将这三列的数据做成一个JS对象,然后,将字符串化的值存入localStorage,比如:

    var col_identifier = {
        col1: ...
        col2: ...
        col3: ...
    };
    
    localStorage.setItem('col_identifier', JSON.stringify(col_identifier));

    用的时候直接取出这个值,然后解析,再取出col1col2col3的值,进行比对

    var col_identifier = JSON.parse(localStorage.getItem('col_identifier') || '{}');
    
    var col1 = col_identifier.col1 || '';
    var col2 = col_identifier.col2 || '';
    var col3 = col_identifier.col3 || '';
    
    ... // 下面就是对比表格数据了

    Antwort
    0
  • 高洛峰

    高洛峰2017-06-28 09:29:46

    可以置顶多个行吗?是的话可以存一个数组。

    感觉比较3个属性过于复杂了,可以给每行一个唯一的 id,这样只要看 id 是否匹配就可以。

    Antwort
    0
  • StornierenAntwort