我有一个Session值,其中包含我想在填充Select语句时设置为所选值的帐户的值。当我尝试使用this.value获取值时,我得到了#34;意外的标识符"。我怎样才能在事件处理程序外看这个?
模板:
<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 ...
});
答案 0 :(得分:0)
在每个把手内部,数据上下文(this)是当前数据元素,而不是dom元素。在您的情况下,您在表单类别中有一个字符串:accountName,您可以使用该字符串来获取与会话进行比较的名称。