Javascript js按钮未更新innerhtml
我在这里已经研究了很多问题,但没有发现类似的问题。我试图给一个按钮一个更新变量的函数(特别是一个数字,即-按钮按下>Javascript js按钮未更新innerhtml,javascript,html,Javascript,Html,我在这里已经研究了很多问题,但没有发现类似的问题。我试图给一个按钮一个更新变量的函数(特别是一个数字,即-按钮按下>0变成1),并将其写入div的innerHTML)。它会在警报中更新,但不会更新innerHTML var example = 0; var exampleDiv = document.getElementById('exampleDiv'); function buyExample() { example += 1; } exampleDiv.innerHTML = 'Y
0
变成1
),并将其写入div
的innerHTML
)。它会在警报中更新,但不会更新innerHTML
var example = 0;
var exampleDiv = document.getElementById('exampleDiv');
function buyExample() {
example += 1;
}
exampleDiv.innerHTML = 'You have ' + example + ' examples.';
网页上显示的数字是0。您的代码工作不正常,因为
exampleDiv.innerHTML
只设置了一次。您必须将其移动到函数
var示例=0;
var exampleDiv=document.getElementById('exampleDiv');
render();
函数buyExample(){
示例+=1;
render();
}
函数render(){
exampleDiv.innerHTML='您有'+example+'个示例';
}
按钮
根据您给出的上下文,您的声明:
exampleDiv.innerHTML = 'You have ' + example + ' examples.';
将仅在Javascript初始化时运行一次,此时示例变量仍设置为0。如果希望每次使用按钮时都更新div,那么还需要将其包含在buyExample()方法中
function buyExample() {
example += 1;
exampleDiv.innerHTML = 'You have ' + example + ' examples.';
}
基于我上述评论的工作代码:
var示例=0;
var exampleDiv=document.getElementById('exampleDiv');
函数buyExample(){
示例+=1;
exampleDiv.innerHTML='您有'+example+'example'+(example!==1?'s':'')+';
}
document.getElementById(“incrementButton”).onclick=buyExample代码>
点击我
您有0个示例。
您必须将更新DOM的语句移动到每次单击按钮时运行的函数中。按照您的方式,innerHTML
在页面加载时设置一次,变量example
在每次单击时都会更新,但您不会再次将example
的值设置到页面
var示例=0;
var exampleDiv=document.getElementById('exampleDiv');
函数buyExample(){
示例+=1;
exampleDiv.innerHTML='您有'+example+'个示例';
}
您有0个示例。
buy
你能提供你的html代码吗?你可能希望exampleDiv.innerHTML=…
在buyExample
函数中,但是你还没有分享足够的代码让任何人确信。你必须提供完整的代码才能确信,但不能仅仅因为增加了“example”,就期望exampleDiv.innerHTML被更新。最可能的情况是,您还必须在buyExample()函数中设置exampleDiv.innerHTML。您从不调用buyExample
,因此它永远不会增加。exampleDiv.innerHTML='您有'+example+'示例'代码>进入buyExample()函数内部。