2015-01-14 4 views
0

(meteorJs) :이 예에서 "ID"속성 (고양이 또는 개를 전달하기 위해 노력하고나는이 다음 부트 스트랩 요소 한

<template name = "myAwesomeTemplate">  
<input class="buy btn span4" id= "cat" value ="something" /> 
<input class="buy btn span4" id="dog" value = "something else" /> 
</template> 

을 - 어떤 버튼에 따라 나는 방법 함수)를 클릭 : 나는 this.idtemplate.find('.buy') 시도

Template.myAwesomeTemplate.events({nt 
    'click .buy' : function (event, template) { 
     Meteor.call('buy', this, $(this).attr(id)); 
    } 
}); 

- 아무것도 정확하게 단어를. 누구든지 어떻게 할 생각이 있습니까?

Meteor.methods({ 
    buy: function(thisref,idref) { 
     console.log(idref); 
}); 

첫 번째 입력 요소를 클릭하면 콘솔에 "cat"이 출력되고 두 번째 입력 요소를 클릭하면 "dog"가 출력됩니다. 정확히이 경우 this 수익을 무엇 또한

? 이 특정 템플릿에 액세스 할 수있는 전체 데이터를 반환하는 것으로 보입니다.

답변

1

좋아 템플릿 데이터를 $(event.currentTarget)를 반환 사용해보십시오 근무 :

Template.myAwesomeTemplate.events({ 
    'click .buy' : function (event, template) { 
     Meteor.call('buy', this, event.target.id); 
    } 
}); 
1

나는 .... 이이 답을 발견, 이벤트 처리기에서이 .buy

Template.myAwesomeTemplate.events({ 
    'click .buy' : function (event, template) { 
     Meteor.call('buy', this, $(event.currentTarget).attr("id")); 
    } 
}); 

$(this)에서, 현재의 클릭 요소 JQuery와 참조를 얻을 수

+0

나는 이것을 시도했다. .. 불행하게도 그것은 작용하지 않았다. 그리고 나는 다음 e를 얻었다 rror : Uncaught ReferenceError : id가 정의되지 않았습니다. – EnderWiggins

+0

@EnderWiggins 오, 이드 주위에 따옴표를 붙이면 솔루션도 괜찮습니다. 더 짧습니다. – ajduke

+0

아 예! 이제 작동합니다. 나는 따옴표도 놓쳤다. 죄송합니다. – EnderWiggins

관련 문제