2013-03-09 78 views
2

尋找將我的文本框值存儲到本地存儲,讓他們在頁面加載時調用,但如果沒有輸入值(即第一次加載應用程序)我得到一個錯誤的說法jquery&html5文本框從本地存儲保存/加載

TypeError: pName is null 
[Break On This Error] 

if(pName.length>0){ 

JS:

$('#form').on("pageinit", function() { 
    $('#saveButton').click(function() { 
     localStorage.setItem("Name", $('#Name').val()); 
    }); 
}); 


$('#form').on("pageinit", function() { 
var pName = localStorage.getItem("Name");  
if(pName.length>0){ 
$('#Name').val(pName); 
} 
}); 

我嘗試添加這一點,但它似乎並沒有實際加載輸入名稱如果該值低於0 ....

$('#form').on("pageinit", function() { 
var pName = localStorage.getItem("Name"); 

    if(pName.length>0){ 
     $('#Name').val(pName); 
    } else { 
     $('#Name').val("Enter name."); 
    } 
    }); 

回答

2

只需使用if(!pName)而不是if(pName.length>0),null並且空字符串是虛假的,因此它滿足不是空字符串的條件,並且如果其爲空,則不會導致錯誤。