Jump to content

Search the Community

Showing results for tags 'тест javascript'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Development
    • HTML Coding
    • JavaScript
    • PHP
    • CMS
    • Database
    • Web Server
    • Web-site Development
    • Internet Marketing, SEO
  • Library
    • Tricks and solutions
    • Books
  • Commercial services
    • Freelance
    • Job
    • Goods and Services
  • Our Forum
    • Flame
    • Contests
    • Feedback and Ideas

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Web site


Telegram


Signal


Viber


Skype


From


Interests

Found 1 result

  1. Всем привет.:yes: Никак не могу закончить функционал теста на javascript. Суть теста проста, есть вопрос, ответы и список результатов. При выборе ответа он отнимает/прибавляет значения к результатам, т.е. каждый ответ, по своему влияет сразу на весь массив результатов. В итоге, подсчитывается сумма всех баллов для каждого результата и 3 с наибольшим количеством выдаются пользователю. Я написал скрипт структуры и влияния ответов на результаты, а так же вывод вопросов и ответов к ним. Но никак не могу понять, как теперь связать выбранный ответ с сабмитом и при клике на кнопку сабмит, произвести экшин этого ответа, который произведёт начисление балов результатам. Очень прошу у вас помощи. Вот что у меня получилось на данный момент (вопросы в рабочей версии, буду выводиться по очереди, а не все сразу): <!DOCTYPE html><html> <head> <title></title> <meta charset="utf-8"> <script src="http://code.jquery.com/jquery-2.1.0.min.js"></script> </head> <body> <script> var driver = { title: 'водитель', result: 0 }; var spaceman = { title: 'космонафт', result: 0 }; var doctor = { title: 'доктор', result: 0 }; var question = [ { indicator: 1, title: "вам нравится водить больше чем летать?", answers: [ { title: "да", action: function() { driver.result = driver.result + 1; spaceman.result = spaceman.result - 1; doctor.result = doctor.result + 1; } }, { title: "нет", action: function() { driver.result = driver.result - 1; spaceman.result = spaceman.result + 1; doctor.result = doctor.result - 1; } } ] }, { indicator: 2, title: "нравится лечить людей?", answers: [ { title: "да", action: function() { driver.result = driver.result - 1; spaceman.result = spaceman.result - 1; doctor.result = doctor.result + 1; } }, { title: "нет", action: function() { driver.result = driver.result + 1; spaceman.result = spaceman.result + 1; doctor.result = doctor.result - 1; } }, { title: "не знаю", action: function() { driver.result = driver.result - 2; spaceman.result = spaceman.result - 2; doctor.result = doctor.result - 1; } } ] } ]; function showAnswer(answerTitle, answerName, valueId) { var context = '<label class="radio">' + '<input type="radio" name="answer' + answerName + '" value="val' + valueId + '">' + answerTitle.title + '</label>'; $('#content').append(context); } function showSection(id) { var q = question[id]; var a = q.answers[id]; var ind = q.indicator; if (q.answers.length > 0) { $('#content').append('<h3>' + q.title + '</h3>'); for (var i = 0; i < q.answers.length; i++) { showAnswer(q.answers[i], ind, i); } } } $(document).ready(function() { showSection(0); showSection(1); }); function check_me() { with (document.test) {// if ($('input').is(':checked')) {// question[0].answers[0].action();// console.log(driver.result);// console.log(spaceman.result);// console.log(doctor.result);// } } } </script> <form method="post" name="test"> <section id="content"> </section> </form> <br /><br /> <input onclick="check_me()" type="button" value="Показать результат"/> </body></html>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy