2015-06-21 55 views
1

我试图通过与Django的发布请求从下拉按钮(Bootstrap)发送选定的选项。我已经能够找到一个解决方案使用JavaScript,但我想找到一个解决方案,削减了JavaScript。发送从Django的引导下拉按钮的选择

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

另一种方法是我可以将链接作为下拉选项,并使用它们重定向到不同的页面,但我真的更喜欢使用发布请求。

我在这方面的尝试主要遵循引导程序示例代码的下拉按钮,并在按钮周围添加了表单标记。我怎么能得到这个工作?

<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> 

让我知道你是否需要我的其他信息,谢谢!

+0

没有JS就无法完成。 – xyres

+0

:(我想这只是指出我需要变得更加适应javascript。 –

回答

1

在没有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使按钮出现在相同的下拉列表链接。