我正在尝试将我的代码转换为工作客户端而不是mongo集合。但是,我无法在不使用数据库的情况下正确显示用户输入。
var dropdown = document.getElementById("timeframe");
var options = dropdown.options[dropdown.selectedIndex].value;
if (options == "weekly"){
var salary = event.target.salary.value;
var budget = {salary: salary * 52};
budget
people.insert(budget);
return false;
};
这是与我的mongo集合一起使用的代码。
如果用户从下拉菜单中选择了每周一次,并输入了一个数字,则会将该数字乘以52并显示总数。
现在,我试图让它以相同的方式工作,但不将数据存储在数据库中,只需将其存储为会话变量。
我更换了一行:people.insert(budget);
使用:Session.set("salary", event.target.salary.value);
但这只是显示用户输入的确切内容,例如,如果用户输入10,它将显示10。
我确信我错过了一些简单的事情。
答案 0 :(得分:0)
正如您所看到的,使用people.insert(budget);
budget
您正在使用变量{salary: salary * 52}
(值为event.target.salary.value
),但是当涉及会话时,您正在使用变量& #39;尚未乘以52(Session.set("salary", event.target.salary.value * 52);
)。
你有一些选择:
1-将代码更改为Session.set("salary", budget.salary);
2-使用以下内容:var budget = {salary: salary * 52};
3 - 将var budget = salary * 52;
更改为Session.set("salary", budget);
,以便您可以像这样使用它:@using (Ajax.BeginForm("NotesPartial", "Home", options, new { id = "NotesForm" }))
我选择第3名。