RegEx无法在JavaScript测验中使用

时间:2013-04-21 16:10:54

标签: javascript regex arrays

我在JavaScript和CSS中有这个测验的东西,它根据一组答案检查输入。在我尝试实施RegEx之前它工作正常。我在RegEx中尝试使答案不区分大小写。这是新代码:

function check(a) {

    var str=a;
    var patt = new RegExp("/"+key[window.questnum]+"/i");
    var anscheck=patt.test(str);


    if(anscheck==true){
        document.getElementById('quiz').style.backgroundColor="#44ee99";
        setTimeout(function() {
            document.getElementById('quiz').style.backgroundColor="#44aaff";
        }, 500); 
        newquest(); }
    else if(a=="") {
        document.getElementById('answer').style.backgroundColor="#00eeee";
        setTimeout(function() {
            document.getElementById('answer').style.backgroundColor="#FFFFFF";
        }, 250); 
        }
    else {
        document.getElementById('quiz').style.backgroundColor="#ee9944";
        setTimeout(function() {
            document.getElementById('quiz').style.backgroundColor="#44aaff";
        }, 500); 
    }

这是旧的工作代码:

function check(a) {
    if(a==key[window.questnum]){
[[etc changing color]]

任何和所有帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

使用新的RegExp()时,应单独放置“i”标志。

尝试:

var patt = new RegExp(key[window.questnum], "i");

答案 1 :(得分:0)

如果在两个字符串上使用String.toLowerCase(),则可以检查相等性。