Magnificent Popup을 열 때 data
개체를 AJAX 요청으로 보내려고합니다. 그러나 $(this)
이 플러그인 내에서 올바르게 번역되지 않는 것 같습니다. 데이터 오브젝트가 제대로 반환되지 않습니다
<div class="my-div">
<a href="/path/to/file.php" data-name="John" data-location="Boston">Click here</a>
</div>
$('.my-div a').magnificPopup({
type: 'ajax',
ajax: {
settings: {
data: $(this).data()
}
}
});
:
이 코드를 생각해 보자. 나는이와 데이터 라인을 교체하는 경우에는 :data: { name: "John", location: "Boston" }
는 다음 나는
$_GET
에 그 객체를 참조 할 수 있어요.
편집 : 아직 아무 것도 반환하지 않습니다
data: { href: $(this).attr('href') }
:이 $(this)
가 magnificPopup
내에서 제대로 작동하지 않는 사실을 촉진하기 위해, 나는에 데이터 라인을 변경했습니다. 내가했던
모든 플러그인 내에서 존중되지 $(this)
가리 것으로 보인다. 어떻게 원래 앵커 태그에서 data
개체를 가져와 AJAX 요청에 전달할 수 있습니까?
난 당신이 .DATA() 메서드의 키를 언급해야 할 것 같아요. http://api.jquery.com/data/ – Pazza22
아니요, 간단한'.data()'는 모든 'data- *'값을 JavaScript 객체로 반환합니다. 예 : http://jsfiddle.net/7nvgL/ –
필수 매개 변수 이름없이 개체를 전달하기 때문입니다. 데이터를보십시오 : {myObj : $ (this) .data()}. 이것은 myObj라는 이름을 가진 객체를 전달할 수 있습니다 – Pazza22