首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

刚学js,有个多选题的作业,哪位高手来帮小弟我看看思路对不对

2012-05-30 
刚学js,有个多选题的作业,谁来帮我看看思路对不对老师给的作业题是这样的多选题 选项为 A B C D判分依据 1

刚学js,有个多选题的作业,谁来帮我看看思路对不对
老师给的作业题是这样的

多选题 选项为 A B C D
判分依据 1.选项全对为满分 2.选项中包括错误答案为零分 3.答案没选全为一半分

我的思路是这样的

//var正确答案为ABC
//事件1 answer"包含D"时 document.write返回信息为"得到0分"
//事件2 answer"为ABC"时 document.write返回信息为"得到100分"
//事件3 answer"不为ABC" 且 "不包含D" document.write返回信息为"得到50分"

现在我遇到的困难是
  
事件1与事件3如何运用逻辑?

另外 我的思路有问题吗?


[解决办法]

HTML code
<!DOCTYPE HTML><html>    <head>        <meta charset="gb2312" />        <title></title>    </head>    <body>        比如 正确答案是 bcd <br />        A:<input type="checkbox" name="test" value="a" />        B:<input type="checkbox" name="test" value="b" />        C:<input type="checkbox" name="test" value="c" />        D:<input type="checkbox" name="test" value="d" />        <button id="btn">显示得分</button>        <script>            function $(el){                return typeof el == 'string' ? document.getElementById(el) : el;            }            var a = 'bcd'; //正确答案            var objs = document.getElementsByName('test');            $('btn').onclick = function(){                var re = [];                for( var i = 0, len = objs.length; i < len; i++ ){                    if( objs[i].checked ){                        if( a.indexOf( objs[i].value ) == -1 ){                            alert(0);                            return;                        }                        re.push(objs[i].value);                    }                }                re = re.join('');                if( re == a ){                    alert(100);                }else{                    alert( 50 );                }            }        </script>    </body></html> 

热点排行