2014-11-24 5 views
0

저는 jquery를 처음 사용했습니다. 데이터 속성에 값이 있거나 비어있는 경우 페이지로드를 확인하려고합니다. 여기 저기 경로 설정하거나 비어 있으면 내가 확인 싶어 어떻게 내 html로데이터 속성에 값이 있는지 확인합니다.

data-tablet="img/xl.jpg" 

입니다. 여기에 내 JS

if ($('#myImg').data('tablet')=null) { 
alert('Path not Set'); 
}; 

입니다 그러나 그것은 나에게 오류를주고 있어요. 해결 방법을 알려주십시오. 덕분에 .

+6

의 "유형"을 제공합니다'='할당'=='평등과 @blgt가 말했듯이'==='그것은 될 가능성이있어, 정체성 – blgt

+1

입니다입니다 구문에 문제가 있습니다. 그러나 당신이 실제로보고있는 오류를 질문에 지정하면 유용 할 것입니다. –

+0

가능한 중복 [JavaScript에서 여러 조건을 만들 수 없습니까?] (http://stackoverflow.com/questions/6727601/cant-make-multiple-if-conditions-in-javascript) –

답변

4

처음에는 의견에서 지적한 바와 같이 등호가 누락되어 비교를 수행하지 않습니다. 두 번째 문제는 데이터 속성이없는 경우 undefined이고 null이 아니라는 것입니다.

if ($('#myImg').data('tablet')===undefined) { 
1

이것을 사용할 수 있습니다. 이 널 (null)의 빈 문자열이 거짓이 될 것이다, 그래서 만약

if (!$('#myImg').data('tablet')) { 
    alert('Path not Set'); 
}; 

자바 스크립트에서 모든 객체 그렇지 않으면 사실 일 것이다, 부울로 변환합니다.

+0

작동하지 않습니다. 생략하면 데이터 attrabute 내가 거기 있는지 여부를 확인할 수 있습니까? –

+1

데이터 특성이 존재하지 않으면 JQuery 데이터 호출은 undefined를 반환합니다. 특성은 있지만 비어 있으면 JQuery는 빈 문자열을 반환합니다. 두 가지 모두 false로 평가되므로 처음에는 느낌표에 반대가됩니다. 따라서 데이터 태블릿 속성이 비어 있거나 존재하지 않으면 알림을 받게됩니다. – Shriike

0

jquery에서 다음 코드를 사용하여 데이터 속성에 데이터가 있는지 여부를 확인할 수 있습니다.

처음에는 형식이있었습니다. 이 편리한 운전자가 당신에게 자바 스크립트 값

if(typeof $('#myImg').data('tablet') != 'undefined') { 
    // data exist 
} else { 
    // data not exist or undefined 
} 
관련 문제