2016-08-23 3 views
1

WTForm 필드의 유효성을 검사 할 수 있습니까? 예를 들어 사용자 이름을 입력하면 해당 필드가 유효한지 확인하고 사용자가 제출을 클릭하기 전에 체크 표시를 표시합니다.제출하기 전에 WTForm 확인

+2

예 그것이로 브라우저 외부에서 할 수있는 여전히 데이터의 유효성을 검사해야합니다. – dm295

답변

0

필드가 변경되면 인접 노드의 텍스트를 확인하고 변경하십시오. 브라우저에서 직접 유효성을 검사 할 수 있습니다. 서버의 데이터에 대해 유효성을 검사하려면 JSON 응답을 반환하고 데이터를 확인하는 뷰에 JavaScript로 요청을 보냅니다.

<input id='username' name='username'> 
<p id='username-status'></p> 
var username_input = $('#username'); 
var username_status = $('#username-status'); 

$('#username').on('focusout', function() { 
    $.post(
     "{{ url_for('username_exists') }}", 
     { 
      username: username_input.val() 
     }, 
     function (data) { 
      username_status.text(data.exists ? '✔️' : ''); 
     } 
    ); 
}); 

이 예

@app.route('/username-exists', methods=['POST']) 
def username_exists(): 
    username = request.form['username'] 
    exists = check_if_user_exists(username) 
    return jsonify(exists=exists) 

는 jQuery를 사용하지만 개념은 어떤 라이브러리에 특정하지 않습니다.

또는 전체 양식을 필드의 유효성 만 검사하는 별도의보기에 게시 한 다음 return jsonify(form.errors)을 입력하고 브라우저에서 해당 항목을 수행하십시오. 이 코드는 오류 메시지를 올바른 필드 옆에 넣기위한 몇 가지 추가 로직과 함께 위와 기본적으로 동일합니다.

하면 양식이 제출 될 때 요청이 JavaScript` '로, 다른

관련 문제