Javascript jquery调查问卷
我正试图创建一份jquery调查问卷,但我的jquery知识对我没有帮助 到目前为止,我所拥有的是以下内容 当您单击“问题”时,弹出窗口将打开两个问题 我想要以下内容:当用户单击两个答案中的一个时,脚本将检查他的答案。数组CheckFirstAnswer负责“告诉”第一个答案是错误还是正确,0表示错误,1表示正确。如果用户单击正确答案,则我希望显示下一个问题及其在数组问题、第一个答案、第二个答案中的答案,否则相应的结论与I值成比例 我将感谢任何帮助Javascript jquery调查问卷,javascript,jquery,Javascript,Jquery,我正试图创建一份jquery调查问卷,但我的jquery知识对我没有帮助 到目前为止,我所拥有的是以下内容 当您单击“问题”时,弹出窗口将打开两个问题 我想要以下内容:当用户单击两个答案中的一个时,脚本将检查他的答案。数组CheckFirstAnswer负责“告诉”第一个答案是错误还是正确,0表示错误,1表示正确。如果用户单击正确答案,则我希望显示下一个问题及其在数组问题、第一个答案、第二个答案中的答案,否则相应的结论与I值成比例 我将感谢任何帮助 谢谢您应该使用$.ajax发回答案,以便服务器
谢谢您应该使用$.ajax发回答案,以便服务器可以评估答案并发送下一个问题。 目前,任何具有JS基本知识的人都可以看到CheckFirstSnswer数组并知道正确答案。 您的站点上有一个HTML页面,因此我不知道您使用的服务器端编程语言 创建一个新页面,该页面接受来自此页面的帖子并评估请求。此页面将向新页面发送问题id、所选答案和授权用户id。新页面将在服务器端维护分数,并发送下一个问题[] 问题经理
//问题编号
var currentQ=-1;
函数showNewQuestion(el){
currentQ++;//递增问题编号
$('.messagepop').html(问题[currentQ]+'
'+
“
”+
“
”+
'' );
}
功能验证(回答){
var firstIsTrue=CheckFirstAnswer[currentQ];
//正确答案(新问题)
if(firstIsTrue&&answer==1
||!firstIsTrue&&answer==2){
showNewQuestion();
}
//回答不正确(结论)
否则{
$('.messagepop').html(结论[currentQ]);
}
}
单击处理程序
$(函数(){
$(“#container_div”).live('click',函数(事件){
//单击了哪个元素
var el=$(event.target);
//第一个答案被点击
如果(el.hasClass(“第一”)){
验证(1);
}
//第二个答案被点击
else如果(el.hasClass(“第二”){
验证(2);
}
//问题开启器被点击
else if(el.attr(“id”)=“问题”){
el.addClass(“选定”).parent()
.附加(“”);
showNewQuestion();
$(“.pop”).slideFadeToggle();
}
//已单击弹出窗口关闭
else if(el.hasClass(“关闭”)){
$(“.pop”).slideFadeToggle();
$(“#问题”).removeClass(“选定”);
}
});
});
// question number
var currentQ = -1;
function showNewQuestion(el) {
currentQ++; // increment question number
$('.messagepop').html( Question[currentQ] + '<br />' +
'<a href="#" class="first">'
+ FirstAnswer[currentQ] + '</a><br />' +
'<a href="#" class="second">'
+ SecondAnswer[currentQ] + '</a><br />' +
'<a href="#" class="close">close</a>' );
}
function validate(answer) {
var firstIsTrue = CheckFirstAnswer[currentQ];
// correct answer (new question)
if ( firstIsTrue && answer == 1
|| !firstIsTrue && answer == 2 ) {
showNewQuestion();
}
// incorrect answer (conclusion)
else {
$('.messagepop').html(Conclusion[currentQ]);
}
}
$(function () {
$("#container_div").live('click', function (event) {
// which element was clicked
var el = $(event.target);
// first answer was clicked
if (el.hasClass("first")) {
validate(1);
}
// second answer was clicked
else if (el.hasClass("second")) {
validate(2);
}
// questions opener was clicked
else if (el.attr("id") == "questions") {
el.addClass("selected").parent()
.append('<div class="messagepop pop" />');
showNewQuestion();
$(".pop").slideFadeToggle();
}
// popup close was clicked
else if (el.hasClass("close")) {
$(".pop").slideFadeToggle();
$("#questions").removeClass("selected");
}
});
});