【问题标题】:Best practice to add/show select options dynamically JS/jquery/PHP [closed]动态添加/显示选择选项的最佳实践 JS/jquery/PHP [关闭]
【发布时间】:2021-04-15 06:12:17
【问题描述】:

我想问一下使用 PHP、javascript 和 jquery 动态生成选择选项的最佳做法是什么。

例如 - car bazaar - 客户必须选择汽车品牌,然后该网络应用必须为该汽车品牌添加/显示车型选项。 p>

我能想到并考虑的技术:

  • 每次用户选择汽车品牌后通过JS调用后端,后端将返回该品牌的所有车型,然后我可以通过JS/jquery将它们添加到选择
  • 使用首页初始化从后端加载所有汽车模型,将它们加载到 JS 变量,然后每次用户选择汽车品牌后添加模型选项以供选择
  • 使用首页初始化从后端加载所有车型,通过 PHP 添加所有车型选项以选择 style="display:none" class="car_brand" 属性,并在用户选择汽车品牌后搜索所有选项 class="selected_car_brand " 并从中删除 style="display:none"

您使用什么来解决此类问题以及如何使用动态选择选项?

谢谢各位!祝你有美好的一天。

【问题讨论】:

  • 我会在第一个页面加载时将整个数据集发送到客户端,然后在客户端用 JS 执行所有可视化操作。它是少量数据,几乎从不改变,因此重复访问服务器没有多大意义。
  • 如果按结构划分的数据量不复杂且易于从基础(简单请求)获取并且场景具有很强的预测性,则可以立即加载。如果它很复杂并且您很难猜测用户场景的行为,您可以通过 ajax 动态加载它(并构建按钮、选择列表、选项、复选框等)。重复不必要地创建过于分支的数据结构可能对流量或到数据库或只是每次点击页面的瓶颈。

标签: javascript php html jquery laravel


【解决方案1】:

这取决于您拥有多少汽车品牌和型号。 如果你有 1k 个产品,我会在用户选择汽车品牌后每次通过 JS 调用后端,如果你有 100 个产品,你可能只想调用一次后端并获取所有数据并显示你想要显示的内容。

最佳实践取决于您的项目。

【讨论】:

    【解决方案2】:

    这取决于几个因素,例如延迟容忍度与限制。

    但如果您刚开始,最好的答案可能是每次都调用后端。

    原因是在实际生产中,汽车品牌、车型和可用数量的价值将一直在变化。因此,最好的办法就是不断获取最新信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-22
      • 1970-01-01
      • 1970-01-01
      • 2016-02-23
      • 1970-01-01
      • 2012-10-12
      • 1970-01-01
      • 2015-06-14
      相关资源
      最近更新 更多