gpt4 book ai didi

php - 如何使用 Ajax 动态加载 Javascript 函数?

转载 作者:行者123 更新时间:2023-11-29 22:41:59 28 4
gpt4 key购买 nike

(反问)

今天我遇到了一个奇怪的场景,我希望 PHP 即时更新 javascript 的行为方式。这很烦人,这是我试过的……

/*
* ajax-php-javascript-function-loader.php
*
* this gets called by AJAX and defines or re-defines the
* definition of dynamicDoStuff()
*/
<script type="text/javascript">
function dynamicDoStuff(a,b){
<?php
//dynamically defined function behavior
?>
}
</script>

这不起作用,因为当加载新的 javascript 时,新函数定义的范围仅限于新的脚本标签。页面其他地方的脚本无法读取它。

所以这是你必须做的。

/*
* index.html
*/
<html>
<head>
<script type="text/javascript">
var dynamicDoStuff;
</script>
<!-- Other Head Stuff -->
</head>
<body>
<!-- the body of the site -->
</body>
</html>

/*
* axax-php-javascript-function-loader.php
*/
<script type="text/javascript">
dynamicDoStuff = function(a,b){
<?php
//dynamically define function behavior
?>
}
</script>

通过在 header 中定义函数的名称,它可以全局访问,因此您可以使用 ajax 和(php 或其他)动态地重新调整它的用途

最佳答案

不仅仅是

function newFunctionViaAjax() { ... }

你可以改用

window['newFunctionViaAjax'] = function newFunctionViaAjax() { ... };

关于php - 如何使用 Ajax 动态加载 Javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2135924/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com