【发布时间】:2017-11-27 02:19:15
【问题描述】:
我有一个 HTML 部分,我想使用 BlazeJS 打开/关闭它。 HTML 看起来像:
<div class="ui small buttons" style="margin: 2em 0em 2em 0em">
<button id="driver_button" class="ui green button">Driver</button>
<div class="or"></div>
<button id="rider_button" class="ui green button">Rider</button>
</div>
<div id="driver_field">
<div class="fields">
{{> Text_Form_Control label="Car Model" placeholder="Toyota Tacoma 2016" value=profile.car errorMessage=(fieldError "car")}}
{{> Select_Form_Control label="Years Owned" placeholder="3" value=profile.year errorMessage=(fieldError "year")}}
</div>
<div class="fields">
{{> Select_Form_Control label="Number of Seats" placeholder="5" value=profile.seats errorMessage=(fieldError "seats")}}
</div>
</div>
<div id="rider_field">
<div class="fields">
{{> Text_Form_Control label="Car Model" placeholder="Toyota Tacoma 2016" value=profile.car errorMessage=(fieldError "car")}}
{{> Select_Form_Control label="Years Owned" placeholder="3" value=profile.year errorMessage=(fieldError "year")}}
</div>
<div class="fields">
{{> Select_Form_Control label="Number of Seats" placeholder="5" value=profile.seats errorMessage=(fieldError "seats")}}
</div>
</div>
相应文件中的相关 Javascript 可以在以下位置找到:
Template.Profile_Page.events({
'click #driver_button'(event, instance) {
event.preventDefault();
const driver = instance.getElementById('driver_field');
const rider = instance.getElementById('rider_field');
driver.style.display = 'block';
rider.style.display = 'none';
console.log('hello');
},
'click #rider_button'(event, instance) {
event.preventDefault();
const driver = instance.getElementById('driver_field');
const rider = instance.getElementById('rider_field');
driver.style.display = 'none';
rider.style.display = 'block';
},
})
但是,实例与文档不对应。如何从事件处理程序访问 div?
【问题讨论】:
标签: javascript meteor