とき、私のドロップダウンリストの値が変更のJavascript / AJAXコードをトリガーするには?

curiousIT:

私は、ドロップダウンリストが値を変更する際にJS / AJAXスクリプトを実行しようとしているDjangoのプロジェクトを持っています。同じコードは、ボタンのためではなく、ドロップダウンに適しています。

ここでは、ボタン、ドロップダウン、最後にスクリプトを含むHTMLコードは次のとおりです。

  <button class="toChange">AJAX POST TEST</button>

  <select class="toChange">
    {% for item in regions %}
    <option val="{{ item }}" {% ifequal item reg %} selected {% endifequal %}> {{ item }} </option>    
    {% endfor %}
  </select>

  <script type="text/javascript">
       $(".toChange").click(function(){
        $.ajax({
            type: 'POST', 
        }); 
    });

EDIT1:views.pyを追加し、私は私の例を単純化しすぎたかもしれないとして、それを適切に反映するために、私のドロップダウンを改正します。

def MyView(request):
    result_r = request.POST.get('reg')

    if request.method == 'POST' and request.is_ajax:

        result_r = request.POST.get('reg')
        query_results = data_immo.objects.all()
        regions = data_immo.objects.values_list("nom_reg", flat=True).distinct().order_by('nom_reg')
        departements = data_immo.objects.values_list("insee_dep").filter(Q(nom_reg=result_r)).distinct()

        query_results_dict = {
        'query_results': query_results,
        'regions': regions,
        'departements': departements,
        'reg': result_r
        }

        return render(request,'home.html', query_results_dict)

なぜそれがボタンではなく、ドロップダウンで動作しますか?私はこれには本当に新しいですので、何が間違っているアイデアを行います。ありがとう!

アヌラーグSrivastava氏:

あなたは使用する必要がchangeある場合には、イベントを<select>

$(".toChange").on('change', function(){ ... })

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=32665&siteId=1