2016-07-05 71 views
0

我做了一个js测验。每当按下“下一步”按钮时,读取问题编号的文本将不断添加显示问题编号的文本,而不是替换它。为了帮助你理解我的意思,this is the linkJavascript函数不断添加文字

这是一个运行的问题数函数的代码:

var header = $('<p>Question ' + (index + 1) + ' of ' + questions.length + '</p>'); 
$('#questionnum').append(header); 

回答

1

你的代码实际上应该使用.html()而不是追加。追加意味着在结尾添加,而.html覆盖该元素的innerHTML

var header = $('<p>Question ' + (index + 1) + ' of ' + questions.length + '</p>'); 
$('#questionnum').html(header); 
3

你应该以文本彻底改变为新的使用的.text属性,而不是.append。 .append将继续附加文本。

$('#questionnum').text(header); 

检查出append()text()方法这个jQuery文档。

+0

这使我的[对象的对象]错误 –

1

您可以使用纯JavaScript这样还有:

document.getElementById("questionnum").innerHTML = header; 

你不会做这种方式等问题。

+0

这使我的[对象的对象]错误 –

+0

的问题,可能来自该代码行有两个: 1)用ID的对象不能找到 2)标题不是字符串 这些是在该行代码可能导致错误的两个唯一原因。确保代码中存在id为“questionnum”的元素,并且“header”是一个字符串。希望这可以帮助 :) – IchHabsDrauf