2017-06-02 95 views
0

我有一個ajax函數,它正在請求檢查用戶輸入的用戶名是否有效。爲此我寫了一個ajax函數並創建了一個視圖來檢查有效性。該視圖檢查有效性並返回JSON響應。成功執行Ajax函數後重定向到新的Django url?

$.ajax({ 
     url: 'some/url', 
     data : {'username' : 'username'}, 
     dataType: 'json', 
     success: function (data) { 
     if (data.results == "failed"){alert('Username not available')} 
     else if (data.results == 'success' {location.href = "some/new/url" + with json_data} 
    }, 
    complete : function(){ 

} 
    }) 

};

如果輸入用戶名,它會要求用戶再次輸入,如果可用,將會加載一個新頁面,並且來自服務器的datatype將爲帶有多個值的JSON data。我怎樣才能加載新頁面作爲參數JSON data。我用location.href但我怎樣才能把json作爲參數?

編輯: 我views.py代碼

def validate_username(request): 
    username = request.GET.get('username', None) 
    isAvailable = 'Checking_in_database' 
    data ={} #JSON Data 
    return JsonResponse(data) 
+0

您可以發佈您的Django視圖代碼呢?在成功函數中嘗試location.href而不是完整的。 – Aniket

+0

@Aniket,已更新。 – Rao

+0

您不能將json_data從js傳遞到新的url。而是創建一些URL'/ data/'並獲取用戶上下文並從服務器傳遞。 –

回答

0

我不知道你爲什麼不服務器端使用它???

如果您檢查服務器中的條件會更好。

但對於使用location.href =「一些/新/ URL」的情況下,你可以把字典它喜歡:

location.href = "some/new/url" {data:data}