2016-04-13 6 views
0

Ich habe eine Vorlage, die eine Checkbox Eingabe haben:wie template.find() zu verwenden, um das Kontrollkästchen aktiviert oder nicht?

Wenn ich diesen HTML

<label class="checkbox-inline"> 
    <input type="checkbox" name="apPartTime" 
     checked="{{isWorkChecked 'isPartTime'}}">Part Time 
</label> 

und let isPartTime = $('[name=apPartTime]').is(':checked');

Ich kann wieder richtig oder falsch, aber wenn ich Javascript verwenden möchten Nur, wie kann ich den booleschen Wert erhalten?

Wenn die HTML-ähnliche

<label class="checkbox-inline"> 
    <input type="checkbox" id ="apFullTime" 
     checked="{{isWorkChecked 'apFullTime'}}">Full Time 
</label> 

und ich möchte diese Checkbox erhalten aktiviert ist oder nicht

Ich versuchte

let isFullTime = template.find('#apFullTime').value; 
let isFullTime = template.find('#apFullTime'); 

Keine gearbeitet wird.

Antwort

0

Wenn Sie das Kontrollkästchen in ein Formular einfügen, können Sie den Wert abrufen, indem Sie auf event.target.myId.checked zugreifen.

Zum Beispiel:

<template name="myTemplate"> 
    <form class="my-form"> 
     <label class="checkbox-inline"> 
      <input type="checkbox" id="ap-full-time-form">Full Time 
     </label> 
     <button type="submit">Submit</button> 
    </form> 
</template> 

Template.myTemplate.events({ 
    'submit .my-form'(event, instance) { 
     event.preventDefault(); 
     let isChecked = event.target["ap-full-time-form"].checked; 
     console.log(isChecked); 
    } 
}); 

Wenn Sie eine separate Meteor Ereignis für Eingabetypen registrieren möchten, können Sie den Wert direkt event.target.checked unter Verwendung von zugreifen.

Zum Beispiel:

<template name="myTemplate"> 
    <label class="checkbox-inline"> 
     <input type="checkbox" id="ap-full-time-form">Full Time 
    </label> 
</template> 

Template.myTemplate.events({ 
    'click input'(event, instance) { 
     let isChecked = event.target.checked; 
     console.log(isChecked); 
    } 
}); 

Darüber hinaus können Sie einfach instance.find("#myId").checked verwenden:

Template.myTemplate.events({ 
    'submit .my-form'(event, instance) { 
     event.preventDefault(); 
     let isChecked = instance.find("#ap-full-time-form").checked; 
     console.log(isChecked); 
    } 
}); 
+0

Sie so viel Dank! –

Verwandte Themen