2010-07-21 11 views
1

그래서 저는 선택 상자를 가져 와서 숨기고 그 안에 앵커 링크가있는 div를 만드는 플러그인을 가지고 있습니다. (드롭 다운 부분 등은 잘 작동합니다).jquery - 추가 정보를 저장할 위치는 어디입니까?

앵커 요소를 만들 때 해당 요소가 나타내는 옵션 값을 어디에 저장해야합니까? 클릭 할 때 데이터를 다시 선택 상자에 넣을 수 있어야합니다.

아이디어가 있으십니까? 의견?

답변

2

data 기능이 편리합니다.

// Store 
$('#some_selector').data('foo', 'bar'); 

// Retrieve 
var value = $('#some_selector').data('foo'); 
0

HTML 5 data- 속성을 사용하십시오.

http://ejohn.org/blog/html-5-data-attributes/

+1

이 속성은 JavaScript를 사용하기 전에 데이터를 저장하는 데 유용합니다. 일단 jQuery를 사용하면 '데이터'메소드가 더 좋은 방법이다. –

1

두 아이디어가 떠오른다. 첫 번째, 전혀 값을 저장하는 항목을 선택 인덱스를 사용하지 않는 :

var realSelect = $("select"); 
$("#fakeselect").delegate("a", "click", function (e) { 
    e.preventDefault(); 
    realSelect[0].selectedIndex = $(this).index(); 
}); 

또는 물론, 당신은 또한 링크 값을 연결합니다 jQuery를 data 기능을 사용할 수 있습니다

$("option").each(function(i, el) { 
    $("<a />", { 
    html: el.innerHTML, 
    data: { val: $(el).val() } 
    }).appendTo("#fakeselect"); 
}); 

$("#fakeselect").delegate("a", "click", function (e) { 
    e.preventDefault(); 
    alert($(this).data('val')); // alerts value 
}); 
관련 문제