質問

Webページでいくつかの機能を実行するための形式でブートストラップモードとブートストラップモーダル拡張を使用しています。これは私が使っているコードです:

<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()関数のみに次の関数のみがもう1回機能していない時間はもう機能しません。

そして私はなぜ、完全なページリロード後、それが再び仕事をするのかを理解することはできません!

役に立ちましたか?

解決

あなたがあなたがしようとしていることを理解しているならあなたはこれを試すことができます。モーダルが閉じられるたびに、すべてのフォーム入力とテキスト領域を見つけ、それらをリセットします。

$('#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