使用单个变量连接的字符串在setTimeout()函数
中正确执行setTimeout("document.getElementById('err_box').innerHTML = "+selected_troops.length, 1000);
但是当我在同一个字符串中加入多个变量时。它没有执行。
setTimeout("document.getElementById('err_box').innerHTML = "+selected_troops.length+" Men "+varues, 1000);
这也没有执行(“string”+ variable +“string”)
setTimeout("document.getElementById('err_box').innerHTML = "+selected_troops.length+" Men", 1000);
答案 0 :(得分:1)
将函数传递给setTimeout()
,而不是字符串:
setTimeout(function() {
document.getElementById('err_box').innerHTML =
selected_troops.length+" Men";
}, 1000);
您的代码不起作用,因为您没有考虑到字符串常量需要"双引号"为了工作。但是,无论如何,这真的不是正确的方法;更容易避免将JavaScript代码放入JavaScript字符串中。
答案 1 :(得分:1)
理想情况下,你应该这样做,
setTimeout(function(){
document.getElementById('err_box').innerHTML = selected_troops.length+" Men "+varues;
}, 1000);