2017-06-29 61 views
0

我需要一个帮助。当用户点击使用Django和Python的views.py文件中的不同按钮时,我需要获取所有的html字段值。我在下面解释我的代码。如何在不使用表单的情况下使用Django和Python获取HTML字段值

<div class="boxwidthinnerdiv"> 
     Nuclear Mini Plant<br /><br /> 
     <select> 
      <option>Reactor 1</option> 
      <option>Reactor 2</option> 
      <option>Reactor 3</option> 
     </select> 
     <br /><br /><br /><br /> 
     <a href="{% url 'start' %}"><button class="buttondiv" type="button">Start</button></a> 
     <a href="{% url 'shut' %}"><button class="buttondiv">Shut Down</button></a> 
     <a href="{% url 'suspend' %}"><button class="buttondiv">Suspend</button></a> 
    </div> 

这里的时候用户会点击开始按钮,选择字段值应该得到其中如下views.py文件。

def start(request): 
    status = 1 

def shut(request): 
    status = 0 

def suspend(request): 
    status = 2 

在这里面的每个动作我需要选择字段选择值。请帮帮我。

+0

为什么你不想使用表单?如果您希望每个提交都转到其他网址,您可以根据按钮点击动态设置表单的动作网址。看看[这么回答](https://stackoverflow.com/questions/22985643/change-form-submission-url-based-on-button-clicked) –

+0

嗯,这不可能工作。你为什么不想使用表单? –

+0

@DanielRoseman:你可以通过文章分享你的想法吗? – subhra

回答

1

您不需要多个视图或链接。只是按钮添加一个名称(例如名称=“类型”)和值对于它们中的每像这样:

<button name="type" value="start" class="buttondiv" type="button">Start</button> 
    <button name="type" value="shut-down" class="buttondiv">Shut Down</button> 
    <button name="type" value="suspend" class="buttondiv">Suspend</button> 
在视图支票

然后哪一个通过获得从交请求的类型值按下。 例如:

#views.py 

def your_view(request): 
    if request.method == "POST": 
     if request.POST.get('type') and request.POST.get('type') == "start": 

      #do something when "Start" button pressed. 

     elif request.POST.get('type') and request.POST.get('type') == "shut-down": 

      #do something when "Shut Down" button pressed. 

     elif request.POST.get('type') and request.POST.get('dl-type') == "suspend": 

      #do something when "Suspend" button pressed. 
    else: 
     #do something when request is not post. 
     #redirect or render a template for example. 

所有的输入,比如选择将可以像一个正常的形式。

您可以打印帖子请求以查看可用的功能并获得更多关于它如何工作的理解。

相关问题