1. 程式人生 > >JsonResponse | Django開發

JsonResponse | Django開發

name ons req -c resp table 返回 scrip char

    # 瀏覽器中使用javascript發起ajax請求時,返回json格式的數據,此處以jquery的get()方法為例;
    # 類JsonResponse繼承自HttpResponse對象,被定義在django.http模塊中.接收字典作為參數;
    # JsonResponse對象的content-type為“application/json”;
    1.前端頁面
        ================================================================================
        <!
DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <script src="/static/jquery-1.12.4.min.js"></script> <script> $(function () { $(
#cal).click(function () { // 獲得a、b值 a = $(#a_val).val(); b = $(#b_val).val(); $.get(/ajax/, {a: a, b: b}, function (data) { $(#result).val(data.result); }); }); });
</script> </head> <body> <table> <tr><td>a:</td><td><input type="text" name="a" id="a_val"></td></tr> <tr><td>b:</td><td><input type="text" name="b" id="b_val"></td></tr> <tr><td><input type="button" id="cal" value="計算"></td><td><input type="text" id="result"></td></tr> </table> </body> </html> ================================================================================
    2.視圖函數
        ================================================================================
        def ajax(request):

            # 獲得請求參數都是字符串類型
            a = request.GET.get(a)
            b = request.GET.get(b)

            if a and b:

                ret = 運算: %d + %d = %d % (int(a), int(b), int(a) + int(b))
                print("ret:", ret)
                return JsonResponse({result: ret})
            else:
                return render(request, ajax.html)
        ================================================================================

JsonResponse | Django開發