2016-03-25 15 views
0
  • kullanarak değerleri
  • ben html ve js kodu ama onun
  • nasıl bana söyleyebilir çalışmıyor yazdım bunu düzeltmek için ..
  • i keman çok

https://jsfiddle.net/r977y9zb/2/ekran html5 yerel depolama ben form değerleri almak ve html5 yerel depolama kullanarak değerleri görüntülemek için çalışıyorum

koyduk
  • altına kodumu sağlayarak
    code 
    $(document).ready(function() { 
        function init() { 
         if (localStorage["name"]) { 
          $('#name').val(localStorage["name"]); 
         } 
         if (localStorage["email"]) { 
          $('#email').val(localStorage["email"]); 
         } 
         if (localStorage["message"]) { 
          $('#message').val(localStorage["message"]); 
         } 
        } 
        init(); 
    }); 
    
    $('.stored').keyup(function() { 
        localStorage[$(this).attr('name')] = $(this).val(); 
    }); 
    
    $('#localStorageTest').submit(function() { 
        localStorage.clear(); 
    }); 
    
  • +0

    Scott'ın cevabı olmalı kodunuzu temizledikten sonra, ancak kodunuz işe yarayacak . Jsfiddle ile ilgili sorununuz, JS bölümünde komut etiketlerini açıp kapamanız ve jQuery'nizde bulunmamasıdır. İşte bu sabit ve çalışkan olanlar ile kemanın: https://jsfiddle.net/keliix06/ykh6ys3m/ –

    cevap

    1

    localStorage erişme ve depolanmış verileri ayarlamak için .getItem() ve .setItem() yöntemlerini kullanır. Adlarınızı, köşeli parantezler ([, ]) gibi bir dizi olduğu gibi localStorage doğrudan geçiriyorsunuz.

    Sayfa hazır olduğunda, yalnızca bir kez işlevi çalıştırmak istediğiniz için, kodunuzun init işlevine sarılmasına gerek yoktur.

    bu deneyin:

    $(document).ready(function() { 
    
         if (localStorage.getItem("name")) { 
          $('#name').val(localStorage.getItem("name")); 
         } 
         if (localStorage.getItem("email")) { 
          $('#email').val(localStorage.getItem("email")); 
         } 
         if (localStorage.getItem("message")) { 
          $('#message').val(localStorage.getItem("message")); 
         } 
    
        $('.stored').keyup(function() { 
         localStorage.setItem($(this).attr('name')) = $(this).val(); 
        }); 
    
        $('#localStorageTest').submit(function() { 
         localStorage.clear(); 
        }); 
    
    }); 
    
    +0

    Cevabınız için teşekkürler ... Kemandaki kodu güncelledim ama formu gönderdiğimde hala hata "hatası" görüyorum : "Kabuk formu doğrulamıyor ... güncellenen kemanımı burada sağladığım https://jsfiddle.net/r977y9zb/4/ –

    +0

    @texirv jQuery'yi dahil etmediğiniz için demolarınız çalışmıyor. – charlietfl

    +0

    @texirv Kemanınız ile ilgili konulara ilişkin yorumuma bakın, ancak bu genel olarak kodun temizlenmesi/düzeltilmesi için iyi bir öneridir –

    1

    tek sorun etkinlik işleyicileri içeride $(document).ready değildir olduğunu aksi kod çalışıyor:

    $(document).ready(function() { 
        init(); 
    }); 
    
    
    function init() { 
        if (localStorage["name"]) { 
        $('#name').val(localStorage["name"]); 
        } 
        if (localStorage["email"]) { 
        $('#email').val(localStorage["email"]); 
        } 
        if (localStorage["message"]) { 
        $('#message').val(localStorage["message"]); 
        } 
    
        $('.stored').keyup(function() { 
        localStorage[$(this).attr('name')] = $(this).val(); 
        }); 
    
        $('#localStorageTest').submit(function() { 
        localStorage.clear(); 
        }); 
    } 
    

    DEMO

    +0

    ancak bu hatadan kaçınmalıyım '' 'Yasak (403) CSRF doğrulaması başarısız oldu. İstek iptal edildi''. Giriş olarak verdiğim ad tam adın yerinde gösterilmesinden beri ... nasıl düzeltileceğini bana anlatabilir misin? –

    +0

    Bu kodun hiçbiriyle ilgisi yoktur. Bu bir sorun ise, tetikleyen ilgili kodla birlikte yeni bir soru başlatmanızı ve csrf'yi – charlietfl

    +0

    nasıl ayarlayacağınızı göstermesini öneriyorum, böylece kemanda gösteremiyorum veya başka bir çevrimiçi editör var mı? Bu işlevselliği kullan –

    İlgili konular