【问题标题】:Problem with getting the select option data获取选择选项数据的问题
【发布时间】:2019-09-05 05:52:19
【问题描述】:

我在从表单中获取所选数据时遇到问题。这是我的表格

    <form action="#" method="GET">
{% csrf_token %}
  <select name="country" id="selectcountries" class="custom-select">
    <option>Select country</option>
    {% for item in countries %}
      <option val="{{ item.name }}"> {{ item.name }} </option>    
    {% endfor %}
  </select>   
  <select name ="city" id="selectcities" class="custom-select">
    <option>Select city</option>
  </select>
  <select class="custom-select" name="option" >
    <option selected> Tourist Spot </option>
    <option> Hotel </option>
    <option> Restaurent </option>
  </select>
  <button type="submit" class="btn tour-btn"><i class="fa fa-search pr-2" aria-hidden="true"></i> <a href="{% url 'advanceSearch' %}"> Search </a></button>
</form>

我的views.py是

def advanceSearch(request):
    country = request.GET.get('country')
    city = request.GET.get('city')
    option = request.GET.get('option')

    if request.method == "GET" :
        if country:
            message = 'q= %s' % country
        else:
            message = 'Empty'

    else:
        message = 'oops'

    return HttpResponse(message)

即使在通过表单传递值之后,HTTPResponse 也总是给我空消息。我想从这个表单中获取数据,但我不能。

【问题讨论】:

    标签: django django-forms django-views


    【解决方案1】:

    我尝试使用提供的代码复制场景,但我认为您的搜索视图没有被执行。您在按钮内的锚标记中提供了{% url 'advanceSearch' %}。它应该在表单的 action 属性中。

    <form action="{% url 'advanceSearch' %}" method="GET">
    {% csrf_token %}
      <select name="country" id="selectcountries" class="custom-select">
        <option>Select country</option>
        {% for item in countries %}
          <option val="{{ item.name }}"> {{ item.name }} </option>    
        {% endfor %}
      </select>   
      <select name ="city" id="selectcities" class="custom-select">
        <option>Select city</option>
      </select>
      <select class="custom-select" name="option" >
        <option selected> Tourist Spot </option>
        <option> Hotel </option>
        <option> Restaurent </option>
      </select>
      <button type="submit" class="btn tour-btn"><i class="fa fa-search pr-2" aria-hidden="true"></i>Search</button>
    </form>
    

    【讨论】:

    • 感谢@Nalin Dobhal 的重播及其成功。你拯救了我的一天。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-03
    • 1970-01-01
    • 2011-03-22
    • 1970-01-01
    • 2021-02-08
    • 2020-11-03
    相关资源
    最近更新 更多