2011-02-23 17 views
1

我用ajax和jquery寫了一個搜索表單,在這裏我試圖用user,start_date和end_date提交一個表單。在django上需要關於ajax和jquery搜索表單的幫助

這裏用戶= Q 起始日期= Q1 END_DATE = Q2

搜索代碼:

{% extends 'newbase.html' %} 

{% block extra_js %} 
<script type="text/javascript"> 
$(document).ready(function() { 
    $('#searchSubmit').click(function() { 
    q = $('#q').val(); 
    $('#search_results').html('&nbsp;').load('/myapp/results_search/?q=' + q +'&q1='+ q1 +'&q2='+q2); 
    }); 
}); 

$(document).ajaxStart(function() { 
    $('#spinner').show(); 
}).ajaxStop(function() { 
    $('#spinner').hide(); 
}); 
</script> 
{% endblock %} 

{% block content %} 
<center> 

<div> 

    <input id="q" type="text"/> 
    <input id="q1" type="text"/> 
    <input id="q2" type="text"/> 

    <input id="searchSubmit" type="submit" value="Search"/> 
    <br/> 
    <span class="hint">Type in a user & Dates to search </span> 
    <div class="margin"> 
    <span id="spinner"><img src="/media/img/spinner.gif"/></span> 
    <div id="search_results"></div> 
    </div> 
</div> 
</center> 
{% endblock %} 

在view.py

def user_search(request): 
    data = { 
    } 
    return render_to_response('manager/attendance_search.html', data, 
           context_instance = RequestContext(request)) 


def results_search(request): 
    if request.is_ajax(): 
     q = request.GET.get('q') 
     start=request.GET.get('q1') 
     end=request.GET.get('q2') 
     if q is not None:    
     results = MyTable.objects.filter(at_user=q,at_date__gte=start,at_date__lte=end) 
     data = { 
       'results': results, 
      } 
     return render_to_response('search_results.html', data, 
             context_instance = RequestContext(request)) 

我的問題是:

  • 給出日期和用戶名後 不返回任何結果?
  • 如何添加多個ARGS在阿賈克斯 像] Q = Q & Q1 = Q1 & Q2 = Q2在 jQuery函數?
  • 如何從request.GET.get中獲取值並傳遞給ORM?

,如果我通過編輯這一行它給輸出只做用戶搜索

以下變化工作

$('#search_results').html('&nbsp;').load('/myapp/results_search/?q=' + q); 
在view.py

def results_search(request): 
     if request.is_ajax(): 
      q = request.GET.get('q') 

      if q is not None:    
      results = MyTable.objects.filter(at_user=q) 
      data = { 
        'results': results, 
       } 
      return render_to_response('search_results.html', data, 
              context_instance = RequestContext(request)) 

但在這裏,單個搜索

工作,如果我添加了多個參數不工作。

我在做什麼錯在request.GET.get

請需要在此

回答

0

我有固定它在我自己的幫助,我忘了下面幾行添加到腳本,這個值會空。現在我得到搜索結果

q1 = $('#q1')。val(); q2 = $('#q2')。val();