在我的django應用程序中,我有一個表單,我要求用戶輸入電子郵件地址和用戶名。與Django的Jquery表單驗證
我希望能夠檢查用戶名或電子郵件地址是否已經存在並引發錯誤。但我想這樣做,而不重新加載我的網頁,所以使用JavaScript或JQuery。
我的第一個想法是將是這樣的(用戶名):
HTML:
<form method="post" onsubmit="return validateForm();">
{% csrf_token %}
<div id='error_message'></div>
<input class='username' type="text" name="username" value=""/>
<button type="submit">Valider</button>
</form>
在我views.py:
def myview(request):
users = User.objects.all()
return render_to_response('mytemplate.html', 'users':users, context_instance=RequestContext(request))
然後在我的模板:
<div class='search'>
{% for user in users %}
<input type='hidden' value='{{user.username}}'
{% endfor %}
</div>
然後,在js中:
function validateForm() {
var value = $('.username').val()
if(// find 'value' in all the <input type='hidden'> ) {
var error = 'Username already exists';
$("#error_message").html(error);
return false;
}
};
我覺得這很複雜。有一種更簡單的方法來實現這一點嗎?
感謝您的幫助。
你可以把通過jQuery的Ajax調用,檢查用戶是否存在和視圖可以使用用戶名並將此結果返回到腳本。 – Jingo