inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

남박사의 파이썬으로 실전 웹사이트 만들기

join html에 javascript를 통해 폼기능 검증 코드를 추가하였으나 제대로 동작하지 않습니다.

해결된 질문

277

Ts K

작성한 질문수 7

1

안녕하세요, javascript를 통한 폼 기능 검증을 위해 코드를 작성하던 중, 

회원가입 코드 작성에서 제대로 동작하지 않아 문의드립니다.

아래와 같이 코드를 작성하였으나 동작하지 않고 기존 member.py에서 구현한 검증기능만 동작하고 있는데요, 어떤 부분이 문제인지 궁금합니다. ( 이메일만 입력 후 회원가입 시도 시 member.py에서 구현한 "입력되지 않은 값이 있다"라는 오류메시지가 뜹니다.)

join.html

{% extends 'main.html' %}

{% block contents%}
<script>
    function checkForm() {
        if($.trim($("#name").val()) == ""){
            alert("이름을 입력하세요");
            $("#name").focus();
            return false;
        }
        if($.trim($("#email").val()) == ""){
            alert("이메일을 입력하세요");
            $("#email").focus();
            return false;
        }
        if(!vailidateEmail($.trim($("#email").val()))) {
            alert("이메일 유효성이 올바르지 않습니다.")
            $("#email").focus();
            return false;
        
        }
        if($.trim($("#pass1").val()) == ""){
            alert("비밀번호를 입력하세요");
            $("#pass1").focus();
            return false;
        }
         if($.trim($("#pass2").val()) == ""){
            alert("비밀번호를 입력하세요");
            $("#pass2").focus();
            return false;
        }
        if($.trim($("#pass1").val()) != $.trim($("#pass2").val())){
            alert("비밀번호가 일치하지 않습니다.");
            $("#pass2").select().focus();
            return false;
        }

    }
</script>
<table>
    <form name="form" action="{{url_for('member.member_join')}}" method ="POST" onsubmit="return checkForm">
        <thead>
            <caption>회원가입</caption>
        </thead>
        <tbody>
            <tr>
                <td>이름</td>
                <td><input type="text" name="name" id="name"></td>
            </tr>
            <tr>
                <td>이메일</td>
                <td><input type="text" name="email" id"email"></td>
            </tr>
            <tr>
                <td>비밀번호</td>
                <td><input type="password" name="pass" id="pass1"></td>
            </tr><tr>
                <td>비밀번호 확인</td>
                <td><input type="password2" name="pass2" id="pass2"></td>
            </tr>
            <tr>
                <td colspan="2"><input type="submit" value="가입하기"></td>
            </tr>
        </form>
    </table>
{%endblock%}

남박사파이썬 python

답변 1

0

남박사

위의 코드 내용만 봐서는 특별히 오류나는 부분을 찾기가 어렵습니다.

보통 자바스크립트에서 문제가 생기면 여러가지 디버깅 방법이 있겠지만 아주 단순하게

<script>

    function checkForm() {
        alert("enter check form");

        if($.trim($("#name").val()) == ""){
            alert("이름을 입력하세요");
            return false;
        }

        alert("exit");
</script>

위처럼 자바스크립트의 함수를 단순화 하여 alert("") 혹은 console.log("") 을 이용해 함수가 호출은 되고 있는지 혹은 어떤 특정 구간에서 오류가 발생하는지를 확인해보시는게 좋을듯 합니다. 이렇게 문제가 없으면 기존의 코드를 한줄 더 추가해보고 확인해보고 이렇게 반복해보시기 바랍니다.

iis 접속후 자동으로 로그인 창이 나오도록 설정이 기능한가요?

0

83

2

리스트 이동 시 창 에러 발생

0

89

1

배포후 회원 등록 후 로그인 에러...

0

87

2

내부 서버 오류

0

85

2

app.config["MONGO_URI"] = "mongodb://localhost:27017/pm_db"

0

65

2

DB 검색하면 데이터가 없습니다. 라고 나와요. 5시간을 찾아봐도 모르겠어서 문의드려봅니다.

0

62

1

몽고db studio3T를 깔았는데

0

70

2

flake8과 linter

0

88

3

500이 뜹니다.

0

66

2

첨부파일 삭제

0

73

2

검색기능 질문

0

74

2

google.py

0

75

2

Studio 3T에 DB insert가 되지 않는 문제를 해결하지 못하고 있습니다 ㅠ

0

92

3

혹시 전체 코드 공개되어 있나요?

0

100

1

join.html 의 form 태그값 을 member_join() 에서 처리못함.

0

112

1

google.py 몽고db 샘플데이터 만들기

0

110

2

flake8 설치 이후 명령팔레트에서 linter가 안보입니다.

0

250

2

파이썬으로 만들어서 웹호스팅에 올릴경우

0

314

1

현재 구글검색 무한스크롤변경 문의합니다

0

306

1

몽고디비아틀라스로 추가 공부해서 올립니다.

0

222

1

IIS 500.19에러

0

667

2

버전 문제도 수정했는데 결과가 안나옵니다.

0

264

1

데이터베이스 저장관련 질문입니다.

0

279

1

test가 생기지 않습니다.

0

517

3