【问题标题】:Django - Dynamically get the appropriate data based on the dropdown selectionDjango - 根据下拉选择动态获取适当的数据
【发布时间】:2018-01-06 00:45:32
【问题描述】:

我有一个模板,其中有一个下拉菜单。我想根据选择的下拉值显示一些数据。数据是从数据库中获取的。

由于我不了解 ajax 或 jquery,因此我需要帮助来根据所选下拉列表动态显示内容。

示例:假设我的下拉列表是 [1,2,3,4]。当用户选择 1 时,它应该在我的 HTML 中显示 ONE,如果用户选择 2,那么它应该显示 TWO,依此类推。

能否分享一下上述示例的 HTML 代码(使用 ajax 或 jquery)?

【问题讨论】:

  • 你把东西混在这里了。 jQuery 与 Ajax 无关。查找有关 Ajax 调用的基本教程,然后逐步学习。在您的情况下,您将有某种提交/选择按钮。单击此按钮时,将使用 onclick="AjaxExample(event)" 等触发 Ajax 调用。当您编写了一些代码并遇到特定问题时回到这里。
  • 我已经编写了这样的代码,当下拉菜单发生变化时,下拉菜单文本会显示在屏幕上。但是我现在需要的是,而不是文本,我想使用此文本并执行一些操作并将该值返回到模板。示例:在显示季度、年度等计划时说我的下拉菜单。当我选择年度时,我想获取年度计划的详细信息(如描述、价格等)并显示在屏幕上。
  • 我的代码{% block content %} <div><br> {% if name %} <label>Plans:<label> <select id="getPlanDetails"> {% for i in planNames %} <option value="{{ i }}">{{ i }}</option> {% endfor %} </select> <div id="results"></div> {% endif %} </div> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script> $("#getPlanDetails").on("change", function(){ var selected = $(this).val(); $("#results").html("You selected: " + selected); }) </script> {% endblock %

标签: jquery python html ajax django


【解决方案1】:

使用 JQuery:

  • 将整个选项作为键值对传递,例如:{key : {key:val, ...}, ...}
  • 使用 JQuery 显示和隐藏等效的子选项 选项被点击。

使用 AJAX:

  • 单击某个选项时,向服务器发送 AJAX 请求。
  • 使用 JQuery 获取其子选项并在浏览器中显示。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-09
    • 2012-04-30
    • 2021-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-14
    相关资源
    最近更新 更多