我必须从我的模型或控制器调用javascript函数。我可以从视图文件中调用它,但是如何直接从Model调用JS函数。
有办法吗?
答案 0 :(得分:2)
PHP是一种服务器端语言。这意味着PHP文件将在HTTP服务器上处理,然后将生成的HTML页面传递给客户端。
Javascript(JS)在客户端(浏览器)上进行解释,并与HTML和其他远程资源进行交互。
由于这个模型,PHP和JS对彼此一无所知。所以不能直接从PHP文件中调用JS。
如果您希望让客户端浏览器调用JS函数并且PHP脚本定义JS函数的值,您可以使用echo()和一些字符串连接
//this is an example and will not run.
echo "<script>myJsFunction('" . $arg1 . "','" . $arg2 . "')</script>";
这将在返回给客户端的HTML页面中嵌入JS函数调用。一旦客户端呈现HTML页面,它将在遇到它时执行函数调用。
如果你能举例说明你想做什么,我可能会给你一个更准确的答案。
有关客户端服务器体系结构以及执行内容的更深入说明,请查看Web Browser Client Server Architecture
答案 1 :(得分:1)
不,尝试理解MVC模式,我们的想法是模型不意识到视图并且不必。此外,您无法使用php调用JS,这是一种服务器端语言,并且对客户端脚本一无所知。
你想要的是实现长轮询。我建议你在尝试实现之前先学习和阅读所涉及的基本技术。