I am trying to use template.find to make my life easier.
But in the javascript console I get: undefined is not a function
Here\'s what I have. I
The Event handler function receives two arguments: event
, an object with information about the event, and template
, a template instance for the template where the handler is defined.
The second parameter is optional, but it needs to be received in handler when you want to use template instance functions like find()
, findAll()
, firstNode()
and lastNode()
.
So, to use the template.find()
in your event handler, you need to pass both the arguments as:
'click input.new_device': function (event, template) {
// your event handling code
}
use a second arugment please like
Template.superuserHUD.events
'click input.new_device': (event, template) ->
options =
id: template.find('.new_device_id').value
IP: 'Not Connected'
Device_IPs.insert options
and sometimes use template itself like
Template.superuserHUD.events
event: (event, template) ->
@find('.new_device_id').value
Here's the same in javascript for the coffee illiterate...
Template.superuserHUD.events({
'click input.new_device': function(event, template) {
var options;
options = {
id: template.find('.new_device_id').value,
IP: 'Not Connected'
};
return Device_IPs.insert(options);
}
});
Template.superuserHUD.events({
event: function(event, template) {
return this.find('.new_device_id').value;
}
});