2015-05-27 155 views
0

當前目標值在沒有選擇器的流星事件中未定義。流星單擊事件值未定義

HTML:

<template name="parent"> 
    {{> Child class="col-30" value="picture"}} 
    {{> Child class="col-70" value="video"}} 
</template> 

<template name="Child"> 
    <div class="{{class}}"> 
    <input type="hidden" name="type" value="{{value}}" /> 
    </div> 
</template> 

JS:

Template.Child.events({ 
    'click': function (event, template) { 
    console.log(event.Target.type.value); //Uncaught TypeError: Cannot read property 'value' of undefined 
    } 
}); 

回答

0

爲什麼你不只是做:

Template.Child.events({ 
    'click .my-div-or-input-class-name-here': function (event, template) { 
    console.log($(event.currentTarget).val()); 
    } 
}); 

有沒有道理呢?你還想點擊什麼元素? Div還是輸入?輸入被隱藏。

+0

謝謝。是的,我需要傳遞一些參數給參數不應該顯示的事件,所以我在隱藏的領域。但有什麼辦法可以在純JavaScript中做到這一點? –

+0

流星在覈心中使用jQuery,但如果你需要,你可以做console.log(e.currentTarget.value)它也應該工作。 – juliancwirko

+0

在你提到的'my-div-or-input-class-name-here'選擇器的代碼中。但在我的情況下,我的選擇器是動態的。 –