求1个JS多选题的做法,有高手没,请帮解决下,里面有俺的思路
比如多择题答案是A,B
当值是A的时候,弹出窗口50分
如果是A,B的时候弹出窗口100分
当是A,C的时候弹出窗口是0分
比如多择题答案是A,B,C
当值是A,C的时候,弹出窗口50分
当值是C的时候,弹出窗口50分
如果是A,B,C的时候弹出窗口100分
当是A,D的时候弹出窗口是0分
function aa()
{
var tt=A,B;//测试答案tt
var mm=A,B,D;//系统答案
//下面写处理方法
alert("");//显示分数
}
我目前的想法是如果完全一致100分
如果不一致,进行拆分,循环判断单个,如果里面的单个都存在答案里,则显示50分
如果里面有1个不存在,显示0分,
不知道JS怎么写
初次学JS,请高手帮忙
------解决方案--------------------
试试吧,差不多可以满足要求
function isInRightAnswer(str,rightAnswer)
{
return rightAnswer.join().indexOf(str)==-1? false:true;
}
function getScore(answer,rightAnswer,fullScore)
{
for(var count=0;count<answer.length;count++)
{
if(!isInRightAnswer(answer[count], rightAnswer))
{
return 0;
}
}
return fullScore*(answer.length==rightAnswer.length? 1:0.5);
}
console.log(getScore(['a','c'],['a','b','c'],100));
console.log(getScore(['a','c'],['a','b','d'],100));
console.log(getScore(['a','b','c'],['a','b','c'],100));
------解决方案--------------------<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
var a=[];
var x=0;
function setAnswear(){
var answear=document.getElementById("test").value.toLowerCase();
answear=answear.replace(/^\s+/,"").replace(/\s+$/,"");
answear=answear.split(/\W+/);
x=answear.length;
a=[];
for(var i in answear){
a[answear[i]]=1;
}
document.getElementById("aa").innerHTML=answear;
document.getElementById("test").value="";
}
function getScore(){
var b=true;
var l=0;
var ax=document.getElementsByName("checks");
for(var i=0;i<ax.length;i++){
if(ax[i].checked){
if(a[ax[i].value]!=1){
b=false;
break;
}else{
l++;
}
}
}
if(!b){
alert(0);
}else if(l!=x){
alert(50);
}else{
alert(100);
}
}
</script>
</head>
<body>
<input type="checkbox" name="checks" value="a">a<br/>
<input type="checkbox" name="checks" value="b">b<br/>
<input type="checkbox" name="checks" value="c">c<br/>
<input type="checkbox" name="checks" value="d">d<br/>
<input type="button" value="提交" onclick="getScore()">
<input type="text" id="test"><input type="button" value="设置正确答案" onclick="setAnswear()">
<div id="aa"></div>
</body