
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
현재 등록 완료를 누르면 paper라는 테이블에 저장이 되어야하는데 $('#name').val() <<이 부분을 인식을 못하는건지 저장까지 안넘어갑니다
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>회원가입 화면 샘플 - Bootstrap</title>
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<style>
body {
min-height: 100vh;
background: -webkit-gradient(linear, left bottom, right top, from(#92b5db), to(#1d466c));
background: -webkit-linear-gradient(bottom left, #92b5db 0%, #1d466c 100%);
background: -moz-linear-gradient(bottom left, #92b5db 0%, #1d466c 100%);
background: -o-linear-gradient(bottom left, #92b5db 0%, #1d466c 100%);
background: linear-gradient(to top right, #92b5db 0%, #1d466c 100%);
}
.input-form {
max-width: 680px;
margin-top: 80px;
padding: 32px;
background: #fff;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
-webkit-box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.15);
-moz-box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.15);
box-shadow: 0 8px 20px 0 rgba(0, 0, 0, 0.15)
}
</style>
<script>
// $(document).ready(function () {
// // show_order();
// });
function show_order() {
$.ajax({
type: 'GET',
url: '/mars',
data: {},
success: function (response) {
let rows = response['users']
console.log(rows);
if(rows==null||rows=="") {
let temp_html = `<tr>
<td></td>
<td>등록된 방명록이 없습니다.</td>
</tr>`
$('#usersBox').append(temp_html)
}
for (let i = 0; i < rows.length; i++) {
let name = rows[i]['name']
let comment = rows[i]['comment']
let temp_html = `<tr>
<td>${name}</td>
<td>${comment}</td>
</tr>`
$('#usersBox').append(temp_html)
}
}
});
}
function save_info() {
alert("!!!!")
let name = $('#name').val()
let comment = $('#comment').val()
alert(name);
alert(comment);
$.ajax({
type: 'POST',
url: '/info',
data: { name: name, comment:comment},
success: function (response) {
alert(response['msg'])
// window.location.reload()
}
});
}
</script>
</head>
<body>
<div class="container">
<div class="input-form-backgroud row">
<div class="input-form col-md-12 mx-auto">
<h4 class="mb-3">회원가입</h4>
<form class="validation-form" novalidate>
<div class="row">
<div class="col-md-6 mb-3">
<label for="name">이름</label>
<input type="text" class="form-control" id="name" placeholder="" value="" required>
<div class="invalid-feedback">
이름을 입력해주세요.
</div>
</div>
<div class="col-md-6 mb-3">
<label for="comment">간단소개</label>
<input type="text" class="form-control" id="comment" placeholder="" value="" required>
<div class="invalid-feedback">
간단한 자기소개
</div>
</div>
</div>
<hr class="mb-4">
<div class="mb-4"></div>
<button class="btn btn-primary btn-lg btn-block" onclick="save_info()" type="submit">가입 완료</button>
</form>
</div>
</div>
<footer class="my-3 text-center text-small">
<p class="mb-1">© 창 4기</p>
</footer>
</div>
<script>
window.addEventListener('load', () => {
const forms = document.getElementsByClassName('validation-form');
Array.prototype.filter.call(forms, (form) => {
form.addEventListener('submit', function (event) {
if (form.checkValidity() === false) {
event.preventDefault();
event.stopPropagation();
}
form.classList.add('was-validated');
}, false);
});
}, false);
</script>
</body>
</html>
//app.py
@app.route("/info", methods=["POST"])
def web_mars_post():
name_receive = request.form['name']
comment_receive = request.form['comment']
doc = {
'name': name_receive,
'comment': comment_receive
}
db.paper.insert_one(doc)
return jsonify({'msg': '방명록이 등록되었습니다.'})
