与多个变量连接的字符串未在 setTimeout() 中执行
String joined with multiple variables are not executing in setTimeout()
与单个变量连接的字符串在 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);
将函数传递给 setTimeout()
,而不是字符串:
setTimeout(function() {
document.getElementById('err_box').innerHTML =
selected_troops.length+" Men";
}, 1000);
您的代码无法正常工作,因为您没有考虑到字符串常量需要 "double quoted" 才能正常工作这一事实。然而,这确实不是正确的方法;避免将 JavaScript 代码放入 JavaScript 字符串要容易得多。
理想情况下你应该这样做,
setTimeout(function(){
document.getElementById('err_box').innerHTML = selected_troops.length+" Men "+varues;
}, 1000);
与单个变量连接的字符串在 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);
将函数传递给 setTimeout()
,而不是字符串:
setTimeout(function() {
document.getElementById('err_box').innerHTML =
selected_troops.length+" Men";
}, 1000);
您的代码无法正常工作,因为您没有考虑到字符串常量需要 "double quoted" 才能正常工作这一事实。然而,这确实不是正确的方法;避免将 JavaScript 代码放入 JavaScript 字符串要容易得多。
理想情况下你应该这样做,
setTimeout(function(){
document.getElementById('err_box').innerHTML = selected_troops.length+" Men "+varues;
}, 1000);