javascript - setTimeout() 不允许我传递文本值

标签 javascript

<分区>

Possible Duplicate:
How can I pass a parameter to a setTimeout() callback?
Is there ever a good reason to pass a string to setTimeout?

我想在 1 秒后调用函数 loadPHPQuote(code)。并希望传递名为 code 的参数,其中包含数字和文本字符。但是 setTimeout() 不起作用,如果代码包含一个字符,它可以只用数字。

这是我的代码

setTimeout('loadPHPQuote('+code+')',1000);

有没有人可以帮我解决这个问题......?

最佳答案

这样做:

setTimeout(function() { loadPHPQuote(code); }, 1000);
  • 当你使用引号时,它会在后台调用eval
  • 当您需要传递参数时,将其包装在上面的函数中。
  • 为了防止立即调用函数,不要在setTimeoutsetInterval中直接使用()

关于javascript - setTimeout() 不允许我传递文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11098203/

相关文章:

javascript - 如何间接使用ContentScripts中网页定义的函数?

javascript - 确定 toggleClass 是否添加或删除类

javascript - 如何将工具提示绑定(bind)到此 html 元素

javascript - 如何通过从页面中删除一些内容来获得整个页面

javascript - 单击时 Angular 2 更改模板输入值

Javascript 选择下拉菜单 onchange 未正确触发

javascript - Css 悬停缩放效果不起作用

javascript - 表 ng-repeat 中的 dir-pagination angularjs - 在更改页面时,首先所有行都会出现片刻

javascript - 如何将 "\"从 "c:\inetput\myfolder\"等字符串替换为 "/"

javascript - 带有计时器的 jQuery/AJAX 调用