2014-04-07 1 views
0

기본적으로 HTML 테이블의 내용을 읽고이 날짜를 쿠키에 저장해야합니다. 그리고 옆에 빨간색이 쿠키는 (JQuery와에 생성 된 첫 번째 테이블)이 동일한 테이블의 ater 페이지를 다시로드쿠키에 jQuery/JS 테이블 덤프

그래서 내가

<table> 
<tr> 
<td>Name1</td> 
<td>Value1</td> 
</tr> 
<tr> 
<td>Name2</td> 
<td>Value2</td> 
</tr> 
</table> 

가 쿠키를 저장하는 HTML 테이블 내가

document.cookie = 'orderArray = '+table; 
를 사용을해야 리필하기 나는이 양식 O를 얻을 것이다 경우

name1:value1;name2:value2 

:

나는 형태로 자신의 세포의 쿠키 내용에 저장해야 f dump next 나는 php에서 테이블을 다시 채울 수 있습니다. 그럼, 어떻게이 HTML 테이블의 덤프를이 양식으로 만들거나 어떤 것이 더 좋은 아이디어일까요?

+0

이것 좀 봐 : http://stackoverflow.com/questions/9927126/how-to-convert-the-following-table-to-json-with- 자바 스크립트 –

답변

0

저는 쿠키 대신에 html5의 localStorage 기능을 사용하는 것이 좋습니다.

테이블 데이터를 가져 와서 배열에 넣으십시오. 다음과 같이 localstorage에 저장하십시오.

var values ​​= getTableData(); // 배열을 반환해야합니다.

window.localStorage.setItem (key, JSON.stringify (values));

데이터를

VAR의 값을 검색 = JSON.parse() window.localStorage.getItem (키);/:

다시 로컬 스토리지 쿠키

0

내가 IE8을 지원하기 때문에 내가 HTML5 기능을 사용할 수 없습니다보다 더 많은 장점이있다.

하지만이 문제가 해결되었습니다.

먼저 jQuery 배열을 만듭니다. 다음 이것을 .toString() 함수를 사용하여 문자열로 변환하고 마지막으로 쿠키에 저장하십시오.

orderArray = []; 
    var data = new Date(); 
    var days = 1; 
    date.setTime(date.getTime()+(days*24*60*60*1000)); 
    expires = "; expires="+date.toGMTString(); 
    jQuery('table tr').each(function(){ 
     var name = jQuery(this).find('.sec').text(); 
     var qty = jQuery(this).find('input').attr('value'); 
     orderArray.push(name+"^"+qty); 
    }); 
    document.cookie = 'orderArray = /'+orderArray.toString()+'/;'+expires; 

내가 사용 .split() 함수 뒤에 쉽게 읽기 데이터에 쿠키 데이터에 슬래시 및 인증서 표시를 사용

table = document.cookie.split("/");  
    table = table[1].split(','); 
    arrayInsert = 0; 
     table.each(function(){ 
      tablee = table[arrayInsert].split("^"); 
      countOrderItems++ 
      jQuery('table tbody').append('<tr><td>'+tablee[0]+'</td><td><input type="text" value="'+tablee[1]+'"></td><</tr>'); 
      arrayInsert++; 
     }); 

내가 다른 어떤 :)하기에 도움이 될 것입니다 바란다.

P. 내 페이지보다 짧고/간단한 코드 litle을 만들었습니다. 나는 어떤 코드라도 놓치지 않았 으면 좋겠다.