我正在关注Meteor的官方教程。我们将事件附加到模板(步骤4)。
HTML
<form class="new-task">
<input type="text" name="text" placeholder="Type to add new tasks" />
</form>
JS
Template.body.events({
"submit .new-task": function (event) {
var text = event.target.text.value;
我得到了添加console.log(事件)的建议,以检查事件的所有属性。当我在Chrome控制台中添加console.log(事件)时,我可以看到具有许多属性的jQuery事件的树,但我似乎无法对存储在文本变量中的属性进行罚款。
我也尝试过console.log(event.target)和console.log(event.target.text),但都没有给我一个属性树和console.log(event.target.text.value)只是日志控制台的预期值。
我需要使用哪个console.log(?)来查找event.target.text.value的路径?或者在Chrome控制台中无法看到此内容?
答案 0 :(得分:2)
需要注意从jQuery API到DOM API的转换。输入的值不是事件的属性,但属于DOM元素,可通过DOM API访问。
在教程中,event.target
是我们在HTML中定义的表单。 event.target.text
访问Meteor权限范围之外的<input name="text">
元素HTMLInputElement。
从那以后,您可以使用所有HTMLInputElement properties,包括value
。
尝试在获取event.target.text.value
的行上设置断点,然后在控制台event.target.text
中输入以查看可用的属性。