문제

웹 페이지에서 일부 함수를 수행하기 위해 부트 스트랩 모달 및 부트 스트랩 모달 확장을 사용하고 있으며, 모달을 닫을 때마다 해당 양식을 재설정하고 싶습니다.이 코드는 내가 사용하는 코드입니다.

<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"이 모달에 대한 참조 인 것을 잊지 마십시오.그것을 당신과 함께 교체하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top