事件外选项元素的Meteor值

Meteor value of option element outside of event

本文关键字:Meteor 元素 选项 事件      更新时间:2023-09-26

我有一个Session值,该值包含在填充Select语句时要设置为选定值的帐户的值。当我尝试使用this.value获取值时,我会得到"意外标识符"。如何在事件处理程序之外看待此问题?

模板:

<template name="transactions">
 <form id="trx_form">
  <select id="account_selector">
    {{> account_selector}}  
  </select>
  <br>
   To or From: <input type="text" value="" size="52" id="to_from"><br>
   <<input type="submit" value="Save" id="save_trx">
 </form>
</template>
<template name="account_selector">
    {{#each accounts}}
     {{#if selectedAcct}}
        <option value="{{this}}" SELECTED>{{this}}</option>
    {{else}}
        <option value="{{this}}">{{this}}</option>
     {{/if}}
    {{/each}}
</template>

助手功能:

    Template.account_selector.accounts = function() {
        // account_categories is a Global array of pre-defined categories
        var pairings = [];
        for (var b = 0, l = account_categories.length; b < l; b++) {
            var category= account_categories[b];
            var acctName = "";
            var accountCursor = account_categories[b].find();               
            accountCursor.forEach( function(acct) {
                acctName = acct.acct_name;
                if (acctName > "")
                {                       
                        pairings.push(category + ":" + acctName);                       
                }
            });
        }
        return pairings;
    };
    Template.account_selector.selectedAcct ({
            var thisAcct = this.value;
            ... Unexpected identifier ...
    });

在每个把手中,数据上下文(this)是当前的数据元素,而不是dom元素。在您的情况下,表单类别中有一个字符串:accountName,您可以使用它来获取要与会话进行比较的名称。