首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将setTimeout()回显到javascript

问将setTimeout()回显到javascript
EN

Stack Overflow用户
提问于 2014-11-20 06:29:29
回答 1查看 2.3K关注 0票数 0

我有一个使用PHP的ajax应用程序。它加载视频,ajax需要在从数据库获取的可变秒数之后加载另一个视频。我试图在视频中回显一个setTimeout,就像这样,loadContent是加载视频的函数。

代码语言:javascript
复制
            echo '<iframe id="youtubeFrame" src="//www.youtube.com/embed/
            '.$row['youtube'].'
            ?autoplay=1" frameborder="0" allowfullscreen></iframe>';

            $refreshTimer = $row['end'] - $time;
            $refreshTimer = $refreshTimer * 1000;
            echo $refreshTimer;
            echo '<script>
            setTimeout(loadContent, '.$refreshTimer.');
            </script>';

视频加载,变量refreshTimer是正确的秒数,但它不会运行setTimeout。

如何使页面刷新时,我的数据库告诉它?

更新:我被告知需要将变量转换为Int,但情况并非如此,因为当没有视频时,这段代码就会运行。

代码语言:javascript
复制
        echo '<h1>Upload content to start the show</h1>';

            echo '<script>
            setTimeout(loadContent, 4000);
            </script>';

这不涉及任何php变量,它是一个直接数字,也不起作用。我很好奇如何在成功的过程中将数据传递给ajax,但是在搜索时我在在线查找相关信息时遇到了困难。

EN

回答 1

Stack Overflow用户

发布于 2014-11-20 06:39:06

根据您提供的信息,我最好的猜测是,PHP变量将被视为string,而不是integer。

所以把它转换成这样:

代码语言:javascript
复制
echo '<script>
 setTimeout(function(){loadContent();}, parseInt('.$refreshTimer.'));
</script>';

方面请注意,将来最好学习如何使用ajax分离PHP和JS (服务器端和客户端) :)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27033174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档