使用Django从bootstrap下拉按钮发送选择

时间:2015-06-21 02:59:23

标签: html django twitter-bootstrap post drop-down-menu

我正在尝试通过Django的发布请求从下拉按钮(Bootstrap)发送所选选项。我已经能够使用javascript找到解决方案,但我想找到一个解决方案,切断javascript。

Max L's question中可以看到一种可能的方法。但是,这会降低从引导程序获得的样式,并添加另一个按钮来发送请求。我希望能够在用户点击下拉菜单中的选项时发送请求。

另一种方法是我可以将链接作为下拉选项放置并使用它们重定向到不同的页面,但我更愿意使用帖子请求。

我的尝试主要是遵循下拉按钮的bootstrap示例代码,并在按钮周围添加了一个表单标记。我怎么能让这个工作?

<div style="float:right">
  {% if forloop.last %}
  <!-- Single button -->
  <div align="right" class="btn-group">
    <form method="POST" action="confirmaction">
      <button type="submit" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
        Intended Action <span class="caret"></span>
      </button>
      <ul name="aid" class="dropdown-menu">
        {% for aid, name in actions %}
        <!--from context dict, use keyname = aid to grab value-->
        <li value="{{ aid }}"><a{{ name }}</li>
        {% endfor%}
      </ul>
    </form>
  </div>

如果您需要我提供的任何其他信息,请告诉我并谢谢!

1 个答案:

答案 0 :(得分:2)

在没有JavaScript的情况下进行POST的唯一方法是单击表单按钮。检查此codepen - http://codepen.io/anon/pen/qdPJYw

<ul class="dropdown-menu">
    <li>
        <form method="POST">
            <button type="submit" class="btn" name="option1" >
               POST ACTION 1
            </button>
        </form>
    </li>
</ul>

此外,你需要一些css使按钮显示与下拉链接相同。