2013-07-18 3 views
1

자바 스크립트 변수에 로컬 저장소 변수를 어떻게 할당 할 수 있습니까? 로컬 스토리지의 항목이 문자열이 될 것입니다자바 로컬 저장소 오류

var abc=localStorage.crabc; 
function tab() 
{ 
    if (abc==2) { 
     window.open("index.html","_self") 
    } else { 
     window.open("main.html","_self") 
    } 
} 
tab() 
localStorage.crabc="2"; 
+0

당신은'localStorage.crabc = "2";''tab()'다음에 줄을 넣었습니다. 이유가있을 수 있습니다 :) 무엇이 오류입니까? –

+1

'if (abc = 2)'? 나는 (재) js 기초를 방문 (재) 조언을거야 ... – tborychowski

답변

1
당신은 localStorage.getItem()를 사용할 필요가

localStorage.setItem() 후 세미콜론이 누락 :

var abc=localStorage.getItem('crabc'); 

function tab() 
{ 
    if (abc=='2') { 
     window.open("index.html","_self") 
    } else { 
     window.open("main.html","_self") 
    } 
} 
tab(); 
localStorage.setItem('crabc', '2'); 
+0

OMG. 작동합니다. MrCode 매우 대단히 감사합니다.이 로컬 저장소 변수는 PC에서 영원히 유지됩니까? 아니면 사용자가 Ccleaner와 같은 것을 사용할 때 제거 될까요? 다시 한 번 감사드립니다 !!! –

+0

사용자가 특별히 삭제할 때까지 남아 있습니다. 현재 버전의 CCleaner가 로컬 저장소를 삭제하는지 확신 할 수 없지만 원하는 경우 사용자가 브라우저 옵션에서 삭제할 수 있습니다. – MrCode

+0

방금 ​​사용 해본 후에도 남겨 뒀습니다. 명확히 해 주셔서 대단히 감사합니다 !!! –

3
  1. :

    여기 내 시도이다.

  2. 대입 연산자 "=="은 등호 연산자 "=="와 반대입니다.
  3. 당신은 로컬 스토리지를 검색하고 저장 항목을 tab()
+0

죄송합니다 beginner.What 나는이 코드와 함께 사용자가 처음으로 특정 URL을 방문하면 그/그녀는 무한한 시간에 두 번째에서 URL로 리디렉션되어야합니다 그는 두 번째 URL로 가야합니다. 가능한가요? –

1

을 시도해보십시오이 Demo here

function tab() { 
     var check = window.localStorage.getItem("visitedBefore"); 

     if (check) { 
      alert('already visited'); 
      window.open("index.html", "_self") 
     } else { 
      alert('first time visited'); 
      window.open("main.html", "_self") 
     } 

     window.localStorage.setItem("visitedBefore", true); 
    } 

HTML :

<input type="button" value="redirect" onclick="tab()" /> 
+0

고마워이 작품도 –

+0

내가 이것을 upvote받을 수 있습니까? – Sudarshan

+0

안녕하세요, Mota chuha 내 평판 수준은 8 그래서 한번 15 upvote 이동해야합니다. –