Utworzyłem "Kreatora" przy użyciu JavaScript i na podstawie odpowiedzi ludzi zostajesz przeniesiony do pewnych wyników div. Działa tak, jak chcę, ale ten kod jest BARDZO powtarzalny. Czy istnieje sposób na oczyszczenie tego kodu JavaScript?Oczyść powtarzający się kod JavaScript
$(".hidden").hide();
$(function() {
$("#start_button").click(function(){
$("#wizard_start").hide();
$("#Q1").show();
});
$("#reset").click(function(){
$("#wizard_start").show();
$(".hidden").hide();
$(":input").not(":button, :submit, :reset, :hidden").each(function() {
this.value = this.defaultValue;
});
});
$("#q1_button").click(function(){
if ($("input[value='q1_1']:checked").val()){
$("#Q2").show();
$("#Q1").hide();
}
else if ($("input[value='q1_2']:checked").val()) {
$("#results1").show();
$("#Q1").hide();
}
else if ($("input[value='q1_3']:checked").val()) {
$("#Q3").show();
$("#Q1").hide();
}
});
$("#q2_button").click(function(){
if ($("input[value='q2_1']:checked").val()){
$("#results2").show();
$("#Q2").hide();
}
else {
$("#results3").show();
$("#Q2").hide();
}
});
$("#q3_button").click(function(){
if ($("input[value='q3_1']:checked").val()){
$("#Q4").show();
$("#Q3").hide();
}
else {
$("#results1").show();
$("#Q3").hide();
}
});
$("#q4_button").click(function(){
if ($("input[value='q4_1']:checked").val()){
$("#Q5").show();
$("#Q4").hide();
}
else {
$("#Q6").show();
$("#Q4").hide();
}
});
$("#q5_button").click(function(){
if ($("input[value='q5_1']:checked").val()){
$("#results4").show();
$("#Q5").hide();
}
else {
$("#Q7").show();
$("#Q5").hide();
}
});
$("#q6_button").click(function(){
if ($("input[value='q6_1']:checked").val()){
$("#Q8").show();
$("#Q6").hide();
}
else {
$("#Q9").show();
$("#Q6").hide();
}
});
$("#q7_button").click(function(){
if ($("input[value='q7_1']:checked").val()){
$("#results4").show();
$("#Q7").hide();
}
else {
$("#results5").show();
$("#Q7").hide();
}
});
$("#q8_button").click(function(){
if ($("input[value='q8_1']:checked").val()){
$("#results6").show();
$("#Q8").hide();
}
else {
$("#results7").show();
$("#Q8").hide();
}
});
$("#q9_button").click(function(){
if ($("input[value='q9_1']:checked").val()){
$("#results8").show();
$("#Q9").hide();
}
else if ($("input[value='q9_2']:checked").val()) {
$("#Q10").show();
$("#Q9").hide();
}
else if ($("input[value='q9_3']:checked").val()) {
$("#results3").show();
$("#Q9").hide();
}
});
$("#q10_button").click(function(){
if ($("input[value='q10_1']:checked").val()){
$("#results9").show();
$("#Q10").hide();
}
else {
$("#results3").show();
$("#Q10").hide();
}
});
$("#q2_backbutton").click(function(){
$("#Q1").show();
$("#Q2").hide();
});
$("#q3_backbutton").click(function(){
$("#Q1").show();
$("#Q3").hide();
});
$("#q4_backbutton").click(function(){
$("#Q3").show();
$("#Q4").hide();
});
$("#q5_backbutton").click(function(){
$("#Q4").show();
$("#Q5").hide();
});
$("#q6_backbutton").click(function(){
$("#Q4").show();
$("#Q6").hide();
});
$("#q7_backbutton").click(function(){
$("#Q5").show();
$("#Q7").hide();
});
$("#q8_backbutton").click(function(){
$("#Q6").show();
$("#Q8").hide();
});
$("#q9_backbutton").click(function(){
$("#Q6").show();
$("#Q9").hide();
});
$("#q10_backbutton").click(function(){
$("#Q9").show();
$("#Q10").hide();
});
});
http://jsfiddle.net/dswinson/PXp7c/56/
także, czy istnieje sposób, aby dodać „Powrót do Start” na wynikach div, który zabierze Cię z powrotem do początku i resetuje wszystkie przyciski radiowe?
Dziękujemy!
Linki na żywo są świetnym * dodatkiem * do pytania, ale zawsze dodawaj odpowiedni kod * również w pytaniu * (nawet jeśli jest powtarzalny). Dwa powody. 1. Ludzie nie powinni podążać za linkiem, aby ci pomóc. 2. StackOverflow ma być zasobem nie tylko dla ciebie teraz, ale dla innych mających podobny problem w przyszłości. Linki zewnętrzne można przenosić, modyfikować, usuwać itp. Upewniając się, że odpowiedni kod jest w pytaniu, zapewniamy, że pytanie (i jego odpowiedzi) pozostanie użyteczne przez rozsądny okres czasu. –
Wydaje się, że to należy do [codereview] (http://codereview.stackexchange.com/). – user113716
Dodałem mój kod do pytania, ale dzięki za link. Opublikuję tam moje pytanie. – Dawn