<html>
<head>
<title>考试成绩</title>
<script>
var tips = [
{"x>=90&&x<=100":"优"},
{"x>=80&&x<90":"优秀"},
{"x>=70&&x<80":"良好"},
{"x>=60&&x<70":"及格"},
{"x>=0&&x<60":"不及格"},
{"":"输入不正确"}
]
var ck = function(){
var v = txt.value
var miss = true
L: for(var i=0i<tips.lengthi++){
var obj = tips[i]
for(var p in obj){
var yes
try{
yes = eval(p.replace(/x/g,v))
}catch(e){}
if(yes){
result.value = obj[p]
miss = false
break L
}
}
}
if(miss) result.value = tips[tips.length-1][""]
}
</script>
</head>
<body>
<input type='text' id='txt' /><button onclick='ck()'>get</button>
<input type="text" id="result" />
</body>
</html>
用 $('#star').raty('score') 来获取评分。然后通过jquery的ajax将评分提交到服务器,服务器负责插入数据库。可以不用隐藏域的,当然你愿意用隐藏域,你用jquery取得数据之后,用val赋值给隐藏域也可以。注意你的代码里#star换成你代码里的那个页面对象的ID。
jquery.raty的官网有相关的API介绍。
打开paintcode,绘制一个漏空的星星体现:操作为:创建canvas 大小30 * 30;修改名称为Star;绘制一个矩形 30 * 30;绘制一个星星 30 * 30 ,星星弧度改为55 %;选中矩形和星星,点击difference,变成bezier 曲线。
接下来,我们添加一个新的canvas,绘制我们需要的控件。
操作为:创建星星评分canvas 150 * 30;创建背景矩形 150 * 30;创建填充矩形 100 * 30;放置5个第一步中绘制的漏空的星星到canvas 上,5个星星组成一个group;然后就可以看到我们想要的视图基本已经出来了。
下一步:将我们画好的生成style文件加入到我们的工程中
先创建一个新的空白工程,添加一个自定义的类ScoreStarsView 继承自UIView
操作为点击paintcode 的file- export 生成stylekit文件放到我们新建的工程下,然后打开xcode ,添加生成是ScoreStarsKit 文件。然后在自定义的ScoreStarsView 类中导入kit,然后在drawRect 进行绘制。最后在storyboard中添加uiview ,把这个view的类改成ScoreStarsView;然后模拟器运行。