我正在开发一种工具,根据客户的选择向客户推荐套餐。将向客户展示几组选择。我有一个问题,当我捕捉选择而不是最后提交时,它提供了各种选择。
例如,客户首先会看到4个选项,他们可以选择的最小选项是2个选项。如果客户选择2个选项,3个选项或4个选项,则建议使用包。
如果客户选择4个选项,最后结果显示2,3&的所有答案。 4个选项。我需要根据最大的选择得到答案。
这就是我捕捉价值并显示答案的方式:
var mapAnswers = {
"answerA": ["opt1", "opt2"],
"answerB": ["opt3", "opt4"],
"answerC": ["opt1", "opt2", "opt3", "opt4"]
};
$('#btn3').click(function () {
for (var i in mapAnswers) {
var valid = true;
for (var index in mapAnswers[i]) {
console.log('index : '+index +' sel'+selections[mapAnswers[i][index]]);
if (selections[mapAnswers[i][index]] !== true) valid = false;
}
console.log('test '+i+' valid ? '+valid);
if (valid === true) $("#" + i).fadeIn("slow");
}
JSFiddle也可以在这里找到:http://jsfiddle.net/J968n/
答案 0 :(得分:0)
好的,您可以针对btn3
点击:
$('#btn3').click(function () {
var choice='';
for (var i in mapAnswers) {
var valid = true;
for (var index in mapAnswers[i]) {
console.log('index : '+index +' sel'+selections[mapAnswers[i][index]]);
if (selections[mapAnswers[i][index]] !== true) valid = false;
}
console.log('test '+i+' valid ? '+valid);
if (valid === true) {
choice=i;
}
}
if(choice!='')
$("#" + choice).fadeIn("slow");
$('#grp2').hide();
$('#done').html(content);
$('#grp3').fadeIn("slow");
});