2012-10-22 3 views

답변

2

가장 좋은 방법은 당신이 당신은 또한 HTML5 데이터는 jQuery의 data()와 속성을 사용할 수 있습니다 (내가 보라보다 높은 1.6)을 약간 새로운 jQuery 라이브러리 버전을 사용하는 경우 요소가

$('#deleteFile').attr('data'); 

속성 얻는 것입니다. 당신이 사용할 수있는 다음

<a id="deleteFile" href="" data-fileid="123">Delete file</a> 

처럼 뭔가 앵커 링크를 변경

$('#deleteFile').data('fileid'); 

그러나 상호 교환을 사용하는 경우에만 그렇지 않으면 나중에 jQuerys는 data() 만 읽어 것 같은 문제를 발생할 수있는 하나의 방법을 사용하지 마십시오 데이터 속성은 내부 캐시에 저장합니다. 당신이 data()을 통해 무엇을 변경하는 경우, 그것은 data()attr() 그 이후

1

그것은 데이터를 정의하는 것이 좋습니다 다른 결과를 반환합니다 의미 실제 태그 속성에서 변경되지 않습니다는 다음과 같이 속성 :

다음
<a id="deleteFile" href="" data-id="123">Delete file</a> 

당신이 읽을 수 있습니다 :

var id = $('#deleteFile').data('id'); 

이 정말 이러한 상황에 대한 attr를 사용하는 것은 좋은 생각이 아니다.

당신이 사용하고자하는 *가 키입니다 data-*를 사용한다
3

:

<a id="deleteFile" href="" data-file-id="123">Delete file</a> 

다음으로 읽을 수 있습니다

$('#deleteFile').data('fileId'); 

알면 속성이 fileIdfile-id에서 변환 된 알 이것은 자동으로 스펙을 준수합니다. 또한 jquery는 javascript 기본 유형으로 값을 변환하려고 시도합니다. 해당 액세스의 가치는 문자열 s 문자열이 아니라 자바 Number이 될 것입니다. 이는 선도자가 0이고 011으로 변환되기 때문에 의미가있을 수 있습니다. 명시 적으로 문자열로 값을해야 할 경우 attr를 사용

$('#deleteFile').attr('data-file-id'); 

또한 attr를 사용하는 경우 대신 낙타 표기법에서 바로 데이터 속성 이름의있는 그대로 당신이 전체 속성의 이름을주의해야한다.

0

당신이 당신의 다음 코딩을 고수 할 경우이

var a = $("#deleteFile").attr("data"); 

에게 Heres는 데모를 시도 할 수 http://jsfiddle.net/Ht7Eg/3/

관련 문제