我目前正在研究一个包含显示其条目的日历的小型Web应用程序。当页面加载时,日历通过PHP生成。AJAX:PHP vs Javascript视图 - Dupliacte查看逻辑?
在同一页上,有一个表单允许编辑条目。 AJAX发送更改命令,然后日历必须以某种方式重新加载。
什么,我想知道目前是这样的:
我有更新通过AJAX日历的两种可能性。
- 一是重新发送日历的HTML标记,它是否意味着重新加载整个日历或日历条目的元素。
这可能不是最优的,因为它需要通过AJAX调用发送相当多的(原始)数据。
另一方面,它只需要调用相同的PHP函数,该函数会再次生成标记,然后返回,然后替换客户端上的DOM元素,因此必需的工作大致是5行代码。
这是我目前使用的方式,因为它感觉“更容易”。 - 另一种是发送新日历条目的数据JSON编码,然后通过JavaScript函数将必要的更改转换为现有的标记。
这也感觉不是最佳的,因为我必须使用两次标记的很多知识:一次在PHP代码中,一次在JS代码中。一旦标记会以任何方式改变,我都可以看到这个冗余代码导致问题。
它也感觉像是一个更复杂的解决方案,考虑到我必须处理大量的字段(大约10+),它很容易包含4-5个代码。另一方面,由于仅发送内容,所以传输的数据少得多。
哪个更好的解决方案?我错过了第三个(甚至是第四个)选项吗?
选择用于渲染*解决方案的2nd * Javascript的一个错误可以在JavaScript禁用的用户没有显示日历的事实中看到。由PHP生成的Calenders HTML代码可能(至少禁用JavaScript)显示。这两种情况都无法实现更新AJAX风格。仍然第一个解决方案可能是更好的后备 – humanityANDpeace