我目前正在开发一个小型 Web 应用程序,其中包括一个显示其条目的日历。当页面被加载时,日历会通过 PHP 生成。
在同一页面上,有一个允许编辑条目的表单。更改命令由 AJAX 发送,然后必须以某种方式重新加载日历。
我目前想知道的是以下几点:
我有两种通过 AJAX 更新日历的可能性。
- 一种是重新发送日历的 HTML 标记,无论这意味着重新加载整个日历还是日历条目的元素。
这可能不是最优的,因为它需要通过 AJAX 调用发送的大量(原始)数据。
另一方面,我只需要调用相同的 PHP 函数再次生成标记,将其返回然后替换客户端的 DOM 元素,因此所需的工作大约是 5 行代码。
这是我目前使用的方式,因为它感觉“更容易”。 - 另一种是发送新日历条目 JSON 编码的数据,然后通过 javascript 函数对现有标记进行必要的更改。
这也感觉不是最佳的,因为我必须两次使用大量的标记知识:一次在 PHP 代码中,一次在 JS 代码中。一旦标记以任何方式发生变化,我就可以看到这个冗余代码导致问题。
它也感觉像是一个更“复杂”的解决方案,考虑到我必须操作大量的字段(大约 10+),它很容易包含 4-5 的代码。
另一方面,由于只发送内容,因此传输的数据要少得多。
哪个是更好的解决方案?我错过了第三个(甚至第四个)选项吗?