Javascript 如何删除附加元素?
我正在javascriptissexy.com上做一个练习,这个练习是构建一个测验。我试图显示一个基于变量page value的问题,问题存储在array对象中,当单击next按钮时,页面变量递增1,并显示下一个问题及其选项 我想做的是在单击“下一步”按钮后,删除前面附加的问题及其选项。。我该怎么做Javascript 如何删除附加元素?,javascript,jquery,html,css,dom-manipulation,Javascript,Jquery,Html,Css,Dom Manipulation,我正在javascriptissexy.com上做一个练习,这个练习是构建一个测验。我试图显示一个基于变量page value的问题,问题存储在array对象中,当单击next按钮时,页面变量递增1,并显示下一个问题及其选项 我想做的是在单击“下一步”按钮后,删除前面附加的问题及其选项。。我该怎么做 function createQuiz(crPage) { textNode = Allquestions[indexController].question; switch (cr
function createQuiz(crPage) {
textNode = Allquestions[indexController].question;
switch (crPage) {
case 0:
$("legend").append(textNode);
appendChoices()
break;
case 1:
$("legend").append(textNode);
appendChoices()
break;
case 2:
$("legend").append(textNode);
appendChoices()
break;
case 3:
$("legend").append(textNode);
appendChoices()
break;
case 4:
$("legend").append(textNode);
appendChoices()
break;
case 5:
$("legend").append(textNode);
appendChoices()
break;
case 6:
$("legend").append(textNode);
appendChoices()
break;
default:
// code
}
}
function appendChoices() {
for (var i = 0; i < Allquestions[indexController].choices.length; i++) {
console.log(Allquestions[indexController].choices[i]);
}
}
函数createquick(crPage){
textNode=Allquestions[indexController]。问题;
交换机(crPage){
案例0:
$(“图例”).append(textNode);
附录选项()
打破
案例1:
$(“图例”).append(textNode);
附录选项()
打破
案例2:
$(“图例”).append(textNode);
附录选项()
打破
案例3:
$(“图例”).append(textNode);
附录选项()
打破
案例4:
$(“图例”).append(textNode);
附录选项()
打破
案例5:
$(“图例”).append(textNode);
附录选项()
打破
案例6:
$(“图例”).append(textNode);
附录选项()
打破
违约:
//代码
}
}
函数appendChoices(){
对于(var i=0;i
不确定是否使用jQuery,但是;使用jQuery empty()函数,您可以轻松删除以前添加的问题,如:
$('legend').empty();
您可以在此处找到更多信息:好的,您每次都可以在
$(“图例”).children()上使用而不是使用.append()
例如,每种情况下的代码如下所示:
$("legend").children().replaceWith(textNode);
appendChoices()
break;
$("legend").html(textNode);
appendChoices()
break;
它将替换每种情况下的$(“图例”)
内容
编辑:
或者最好的方法是使用如下方法:
$("legend").children().replaceWith(textNode);
appendChoices()
break;
$("legend").html(textNode);
appendChoices()
break;
注意:
我看到您在每种情况下都在做同样的事情,通过使用相同的语句,开关
块的目的是什么?这比使用建议的空()而是包装在函数中好吗?所以我可以在每种情况下调用这个函数?像这样的函数appendQuestion(){$('legend').empty().append(textNode);}
@Jcan这里没有好处,它们只是两种方法,但我认为最好使用.html()
方法,请参见我的编辑。