php - 隐藏测验应用程序中最后一个测验的下一个按钮

标签 php javascript jquery

我正在使用 PHP 制作一个测验应用程序。现在的问题是,即使是最后一个问题,它也显示下一个按钮,如图 quiz 所示。

由于问题是从数据库动态获取的,因此每个问题都没有页面。所以我无法指定在什么时候应该隐藏下一个按钮(如果我有 1000 个问题怎么办)。我尝试过使用 JavaScript。它似乎并不安静。

更新 Source code

最佳答案

演示:http://jsfiddle.net/e4Ny6/2/

使用

var numQuestions,
    navs;
function init() {
  cd();
  numQuestions = document.getElementsByClassName("qButton").length;
  navs = document.getElementsByClassName('navbutton');
  show(0);
}

function show(i) {
    document.getElementsByClassName("current")[0].className="qButton";
    document.getElementsByClassName("active")[0].className="qPanel";

    document.getElementsByClassName("qPanel")[i].className+=" active";
    document.getElementsByClassName("qButton")[i].className+=" current";

    navs[0].style.display = i===0 ? 'none' : '';
    navs[1].style.display = i===numQuestions-1 ? 'none' : '';

    currentQuestion=i;
}

...而不是您的函数 initshow

题外话:

如果您想提高性能,请将所有 document.getElementsByClassName 调用存储在 init() 内的变量中。这样您只需执行一次那些昂贵的调用。

关于php - 隐藏测验应用程序中最后一个测验的下一个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18598577/

相关文章:

javascript - 如何中和注入(inject)的远程 Ajax 内容?

javascript - 有没有办法覆盖 ExtJs 中的所有 View Controller 监听器

javascript - 开启bxSlider移动

单击 mailto 链接时 Jquery 弹出窗口

php - 有没有办法让这些查询更短?

php - 检查所有数组项是否为空 PHP

php - mysqli_query 有问题,返回 NULL 但查询在 phpmyadmin 中有效

javascript - Botium-Core - 只需要断言 Alexa 响应的某些部分

javascript - jQuery .click() 不会在特定元素上触发

php - Cordova 使用 AngularJS 将数据发布到 Mysql 数据库不起作用