2009-07-09 8 views
5

개체 목록을 표의 행과 연결해야하는 페이지에서 작업하고 있으며 jQuery를 사용하고 있습니다.jQuery.data를 사용하여 항목 목록 저장

jQuery.data 내가 목록이 될 수 있습니다 얼마나 오래 모르겠어요, 그것은 비어있을 수 더 같은

id=4,setting=2 
id=3,setting=1 
... 

을 필요로하는 반면 단지, 열쇠 데이터의 조각을 연결하는 것 같다.

이 작업을 수행하는 합리적인 방법이 있습니까?

답변

8

당신은 jQuery를 데이터로 무엇을 저장할 수 있습니다, 그래서 당신이 할 수있는 :

var myData = {}; 

myData[4] = 2; 
myData[3] = 1; 

$("#myitem").data("mydata", myData); 

그런 다음에 액세스 할 수 있습니다

var myData = [ { id: 4, setting: 2 }, [ id:3, setting:1 ] }; 

$("#myitem").data("mydata", myData); 

당신이 ID로 뭔가를 선택합니다, 당신이 할 수있는 귀하의 설정은 다음과 같습니다 :

var value = $("#myitem").data("mydata")[3]; // returns 1 
+0

요소를 가지고 있다면'$ (element) .data ("mydata")보다'$ .data (element, "mydata")'를 사용하는 것이 훨씬 더 효과적입니다. –

1

지금 시도해 볼 시간이별로 없지만 키에 대해 간단한 문자열을 저장하는 대신 왜 객체를 저장하지 않으시겠습니까?

$("div").data("blah", {id: 4,setting: 2}); 
var myBlah = $("div").data("blah"); 
var id = myBlah["id"]; 
var setting = myBlah["setting"]; 

날 당신이 얼마나 알려 ... JQuery와 문서를 의역합니다.

+0

하지만 개체 목록을 저장하려고합니다 ... –

+0

죄송합니다 - 사용자에게 전체 배열이 있어야합니다. 나는 activa가 동일한 해결책을 제공했음을 알 수 있습니다. 그러나 배열을 사용하면 그것을 능숙하게 처리 할 수 ​​있습니다. 솔루션을 설치하고 운영하고있어 기쁩니다. – belugabob

+0

도움을 주셔서 감사합니다 :) –

0

배열을 사용하여 키 - 밸리를 저장하는 목록 및 JSON 객체를 저장할 수 있습니다 ue 쌍.

<div id="DIV1"></div> 
<div id="DIV2"></div> 
<div id="DIV3"></div> 
<div id="DIV4"></div> 
<table><tbody><tr id="TR1"><td><td/></tr></tbody></table> 
<script type="text/javascript"> 
$(function() { 
    $("#TR1").data("blah", [{id: 4, setting: 2}, {id: 3, setting: 1}]); 
    $("#DIV1").text($("#TR1").data("blah")[0].id); 
    $("#DIV2").text($("#TR1").data("blah")[0].setting); 
    $("#DIV3").text($("#TR1").data("blah")[1].id); 
    $("#DIV4").text($("#TR1").data("blah")[1].setting); 
}); 
</script> 
관련 문제