Bootstrap模态仅重置一次
-
23-12-2019 - |
题
我正在使用bootstrap模态和bootstrap-mocal扩展,内部的表单在网页上做一些函数,我想每次关闭模态时重置该表单,这是我正在使用的代码:
<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