当页面加载时,它会从functions.php
文件触发PHP函数,从数据库中获取数据并填充DOM元素,如下所示:
<h1>TOTALS: <?php fetchTotals(); ?></h1>
提交数据后,通过JS处理的表单,我想再次启动PHP函数 来更新总计和不重复代码。
我已阅读this和this,看看那里有什么有用的东西。我已经知道我可以使用$.ajax
或$.post
来运行文件,但由于该功能已经存在,并且我讨厌重复代码,我想知道是否有一个更优雅的优雅解决方案,可以避免创建一个完全复制已存在功能的文件。跟我来干,好;重复,不好。
再次:寻找更多优雅的方式,而不是基本的方法。
如果没有,那就是野兽和螺丝DRY。但我想变得更好。 :)答案 0 :(得分:1)
考虑一个调度程序文件 - 实际上只是一个php文件,它抓取你传递给它的一个参数(例如,dispatcher.php?action = fetchTotals),它对动作起作用,并调用名为PHP方法的动作。它甚至可能只是一个简单的php switch语句。
是的,它是一个额外的文件。话虽这么说,你不会重写或复制任何方法。而且,从可维护性的角度来看,如果您将所有ajax调用发送到集中式调度程序,则可以简化可读性和重用。作为额外的奖励,您可以对其进行编码,以便对特定命名方法的调用实际上可以调用多个PHP方法。