부트 스트랩 모달만이 한 번 다시 설정합니다
-
23-12-2019 - |
문제
웹 페이지에서 일부 함수를 수행하기 위해 부트 스트랩 모달 및 부트 스트랩 모달 확장을 사용하고 있으며, 모달을 닫을 때마다 해당 양식을 재설정하고 싶습니다.이 코드는 내가 사용하는 코드입니다.
<button class="btn <?php if (isset($_SESSION['useremail']) && $_SESSION['useremail'] == ""){ echo 'btn-default btn-sm btn-block';}else{ echo 'btn-primary btn-sm btn-block';}?>" data-toggle="modal" data-target="#chgpwemail_modal" id="mailmanager" <?php if (isset($_SESSION['useremail']) && $_SESSION['useremail'] == "") echo 'disabled="disabled"';?>><i class="fa fa-envelope fa-fw" ></i>Alterar Senha Email</button>
.
모달이 해고되어 있고 내부 에서이 코드가있는 해산 버튼이 있습니다.
$('#dismiss-chgpwemail').click(function(event) {
$('#chgpwemail_modal').modal('hide');
});
$.clearInput = function () {
$('form').find('input[type=text], input[type=password], input[type=number],input[type=email], textarea').val('');
};
$('#chgpwemail_modal').on('hide.bs.modal', function(e) {
$.clearInput();
});
.
이므로 내 문제가 ClearInput () 함수만이 한 번만 사용한 후에 만 더 이상 작동하지 않습니다.
그리고 나는 이유를 알아낼 수 없다. 왜냐하면 완전한 페이지가 다시로드 된 후에 다시 작동한다!
해결책
내가 당신이 무엇을하려고하는지 이해하면 이것을 시도 할 수 있습니다.모달이 닫힐 때마다 모든 양식 입력 및 텍스트 영역을 찾아 재설정하려고합니다.
$('#modal').on('hidden.bs.modal', function() {
$('form').find('input').val('');
$('form').find('textarea').html('');
});
.
코드를 더 잘 만들 수 있습니다.방금 내가 가지고있는 것과 같은 것을 입력 한 것을 알아 차렸다.)
HTML 에이 또는 모든 모달을 등록하려는 경우 다음을 수행 할 수 있습니다.
대신$('#modal').on('hidden.bs.modal', function() {
.
이
를 입력하십시오$('body').on('hidden.bs.modal', '.modal', function () {.....});
.
이 파일을 사용하면 모든 모달에 대한 이벤트를 등록합니다.".modal"이 모달에 대한 참조 인 것을 잊지 마십시오.그것을 당신과 함께 교체하십시오.
제휴하지 않습니다 StackOverflow