简体   繁体   English

JavaScript代码仅在Chrome中有效,而在Firefox,IE,Opera和Safari中无效

[英]JavaScript code working only in Chrome but not in Firefox, IE, Opera and Safari

I'n new to programming and I tried something in JavaScript and it worked well in Chrome. 我是编程的新手,我尝试使用JavaScript进行某些操作,并且在Chrome中效果很好。 But It fails to work in IE, Firefox, Safari and Opera. 但是它无法在IE,Firefox,Safari和Opera中运行。 Am I doing anything wrong with my code? 我的代码有错吗?

function hp(form) {
    var count1 = 0, count2 = 0, count3 = 0, count4 = 0, count5 = 0, count6 = 0, count7 = 0, count8 = 0, count9 = 0, count10 = 0;
    for (var i = 0; i < 3; i++) {
        if (form.q1[i].checked == true) {
            count1++;
        }
    }
    if (count1 !== 1) {
        alert("Please Answer 1st Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q2[i].checked == true) {
            count2++;
        }
    }
    if (count2 !== 1) {
        alert("Please Answer 2nd Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q3[i].checked == true) {
            count3++;
        }
    }
    if (count3 !== 1) {
        alert("Please Answer 3rd Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q4[i].checked == true) {
            count4++;
        }
    }
    if (count4 !== 1) {
        alert("Please Answer 4th Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q5[i].checked == true) {
            count5++;
        }
    }
    if (count5 !== 1) {
        alert("Please Answer 5th Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q6[i].checked == true) {
            count6++;
        }
    }
    if (count6 !== 1) {
        alert("Please Answer 6th Question");
        return false;
    }

    for (var i = 0; i < 3; i++) {
        if (form.q7[i].checked == true) {
            count7++;
        }
    }
    if (count7 !== 1) {
        alert("Please Answer 7th Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q8[i].checked == true) {
            count8++;
        }
    }
    if (count8 !== 1) {
        alert("Please Answer 8th Question");
        return false;
    }
    for (var i = 0; i < 4; i++) {
        if (form.q9[i].checked == true) {
            count9++;
        }
    }
    if (count9 !== 1) {
        alert("Please Answer 9th Question");
        return false;
    }
    for (var i = 0; i < 3; i++) {
        if (form.q10[i].checked == true) {
            count10++;
        }
    }
    if (count10 !== 1) {
        alert("Please Answer 10th Question");
        return false;
    }
    answer1 = (form.q1.value);
    answer2 = (form.q2.value);
    answer3 = (form.q3.value);
    answer4 = (form.q4.value);
    answer5 = (form.q5.value);
    answer6 = (form.q6.value);
    answer7 = (form.q7.value);
    answer8 = (form.q8.value);
    answer9 = (form.q9.value);
    answer10 = (form.q10.value);
    var a = parseInt(answer1);
    var b = parseInt(answer2);
    var c = parseInt(answer3);
    var d = parseInt(answer4);
    var e = parseInt(answer5);
    var f = parseInt(answer6);
    var g = parseInt(answer7);
    var h = parseInt(answer8);
    var ii = parseInt(answer9);
    var j = parseInt(answer10);
    var c = a + b + c + d + e + f + g + h + ii + j;
    //document.getElementById("result").innerHTML= "The selected values are "+"</br>"+a+"</br>"+b+c+d+e+f+g+h+ii+j+"</br>"+c;
    if (c <= 20) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 20) && (c <= 25)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 25) && (c <= 30)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 30) && (c <= 40)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 40) && (c <= 50)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 50) && (c <= 60)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 60) && (c <= 65)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 65) && (c <= 75)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    else if ((c > 75) && (c <= 90)) {
        document.getElementById("total").innerHTML = "<h3>" + "ABCD" + "</h3>" + "</br>" + "<IMG ALIGN='center' " + "SRC='images/img.png'>";
    }
    c = 0;
}

I tried this code in local host and i got my desired output in Google Chrome. 我在本地主机上尝试了此代码,并在Google Chrome中获得了所需的输出。 When i tried the same page in Firefox and other browser, it failed to work. 当我在Firefox和其他浏览器中尝试同一页面时,它无法正常工作。 Only checkbox validation is working fine. 只有复选框验证可以正常工作。 Thanks in Advance 提前致谢

From personal experience, I have noticed that Chrome is more forgiving when it comes to small errors. 从个人经验来看,我发现Chrome在遇到小错误时更为宽容。 It is strange how you are not getting an error in the debug box at all... But, a place I can see from reading the code is where you define the variables a,b,c... I recommend placing a comma after each. 奇怪的是,您在调试框中根本没有收到错误...但是,从阅读代码中我可以看到的地方是您定义变量a,b,c...我建议在后面放置逗号每。 So, you get: 因此,您得到:

var a = parseInt(answer1),
    b = parseInt(answer2),
    c = parseInt(answer3),
    d = parseInt(answer4),
    e = parseInt(answer5),
    f = parseInt(answer6),
    g = parseInt(answer7),
    h = parseInt(answer8),
    ii = parseInt(answer9),
    j = parseInt(answer10);

Then here is where I think you have an error. 然后这是我认为您出错的地方。 You have var c = ... again after already defining c . 在已经定义c之后var c = ...又有var c = ... So, try removing the var right there. 因此,尝试在此处删除var

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Javascript / jQuery无法在Firefox,Safari和IE中运行。 精通Opera和Chrome - Javascript/jQuery not working in Firefox, Safari and IE. Fine in Opera and Chrome javascript在chrome / opera / IE中不起作用,但是firefox非常好! - javascript not working in chrome/opera/IE but firefox is excellent! JavaScript工作正常在IE,Firefox和Opera中,但在Safari或Chrome中没有(Textbox.value) - JavaScript working fine In IE, Firefox and Opera but not in Safari or Chrome (Textbox.value) CSS无法在IE,Firefox,Opera中加载,并且无法与Chrome和Safari正常运行 - Css not loading in IE,Firefox,Opera and working fine with Chrome and Safari jQuery .css()在IE 6,7,8和Firefox中不起作用,但在Chrome,Safari,Opera中起作用 - jQuery .css() not working in IE 6,7,8 and Firefox, but works in Chrome, Safari, Opera 可以在Chrome中正常工作的JavaScript jQuery代码,而不能在Firefox,Safari,IE中运行 - Simply javascript jQuery code working in Chrome, not Firefox, Safari, IE 我的简单Javascript代码可在Safari上运行,但不能在Chrome,Firefox或Opera上运行,这怎么了? - My simple Javascript code is working on Safari, but not Chrome, Firefox nor Opera, Whats wrong? 滚动效果的Javascript代码可在Safari / chrome中运行,而不在Firefox / Opera中运行 - Javascript code for scroll effect works in Safari/chrome, not firefox/opera 代码可在Safari,Firefox和Chrome中运行,但不能在IE(对齐)中运行 - Code working in Safari, Firefox, and Chrome, but not in IE (Alignment) Chrome可在Chrome,Opera和Edge上使用Javascript,但在FireFox或IE 11上则无法使用 - Javascript working on Chrome & Opera & Edge, but not on FireFox or IE 11
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM