如何使用javascript访问sails.js模型中的属性
How to access attributes in sails.js model with javascript?
我想访问编辑视图中的一些属性来更改一些值。
我尝试过用<%=course.scoreAlgo=>
之类的东西访问,但不起作用。
我似乎无法访问script
标记中模型中的任何属性。任何和所有的帮助,我可以访问这是非常感谢!
课程模式:
module.exports = {
attributes: {
code:{
type: "string"
},
name:{
type: "string"
},
recitations:{
type: 'array',
defaultsTo: 0
},
finishedAssignments:{
type: "array"
},
recitationScore:{
type: 'integer',
defaultsTo: 0
},
recitationGroup:{
type: "string",
defaultsTo: "none"
},
shown:{
type: "string",
defaultsTo: "no"
},
scoreAlgo:{
type:"array"
},
takes:{
model: 'student'
}
}
};
这就是我试图制作的代码:
<form action="/course/update/<%= course.id %>" method="POST">
<h2>Edit course</h2>
<input value="<%= course.code%>" type="text" name="code"><br/>
<input value="<%= course.name%>" type="text" name="name"><br/>
<input value="<%= course.shown %>" type="text" name="shown"><br/>
<input value="<%= course.recitationScore%>" type="text" name="recitationScore"><br/>
<p>Score algo, specify by saying how many have to be completed for each "subgroup".
If two from a, two from b and one from c means full score, put "2,2,1"</p>
<input value="<%=course.scoreAlgo%>" type="text" name="scoreAlgo">
<input type="button" value="Calculate recitationScore" onclick="calcScore()">
<script>
function calcScore(){
var stringArray = course.finishedAssignments;
var scoreAlgo = course.scoreAlgo;
for(var i=0; i < stringArray.length; i++){
var str = stringArray[i];
var sStr = str.split(",");
for(var j=0; j < sStr.length; j++){
var count = scoreAlgo[i]
var s = sStr[i];
var sS = s.split((i+1).toString);
if(sS.length >= count){
var score = sS.length*33;
course.recitationScore = course.recitationScore + score;
console.log(score);
}
}
}
}
</script>
<input type="submit" value="Edit course"/>
</form>
传递给.ejs并希望显示的所有值都需要用<%= %>
或<%- %>
包装,即使在<script></script>
中也是如此
function calcScore(){
var stringArray = <%= course.finishedAssignments %>;
var scoreAlgo = <%= course.scoreAlgo %>;
for(var i=0; i < stringArray.length; i++){
var str = stringArray[i];
var sStr = str.split(",");
for(var j=0; j < sStr.length; j++){
var count = scoreAlgo[i]
var s = sStr[i];
var sS = s.split((i+1).toString);
if(sS.length >= count){
var score = sS.length*33;
//course.recitationScore = course.recitationScore + score; <!- not sure what should it do
console.log(score);
}
}
}
}
相关文章:
- 将输入值设置为ng模型属性[Angular]时出现问题
- 如何使用Undercore和Backbone在HTML中表示模型属性
- 主干中的模型属性未定义
- sails.js beforeCreate方法只接收required设置为true的模型属性
- 比较主干中的两个模型属性
- 更新淘汰视图模型属性时激发更改事件
- Eloquent模型属性为骆驼大小写[Laravel 5.2][Dingo API]
- 如何从单独的javascript文件访问模型属性?(MVC)
- 从Ember视图获取模型属性
- 根据三个模型属性对主干集合进行排序
- 根据模型属性对主干集合进行排序
- 默认情况下,一个模型属性等于 sail.js 模型中的另一个模型属性
- 在 Backbone 中侦听和修改模型属性的正确方法是什么.js
- 如何从视图主干传递回模型属性
- 主干 js - 更改模型属性
- AngularJs 将模型属性绑定到复选框
- 主干.js - 如何在模板中使用自定义模型属性
- 主干 + 下划线:找不到模板变量.+ 如何正确访问模型属性
- 从另一个具有属于关系的模型访问模型属性 Ember.js
- 通过模型属性 AngularJS 获取节点元素