Bootstrap 4.1.3 模态体保留jquery返回的数据。如何为每个新请求清除缓存?
Bootstrap 4.1.3 modal body retains jquery returned data. How to clear cache for each new request?
我有一个通过 jquery 提交数据的表单,然后通过 bootstrap 模式显示。
但是,问题是,如果我快速尝试为表单提供新值,那么模态主体有时不会显示新计算的值,而是显示旧的缓存值。
如何销毁 bootstrap 4 中的模态缓存数据?我已经尝试了各种 bootstrap3 技巧,但它就是行不通,我仍然断断续续地看到旧的缓存数据。
这是我试过的。
$('#modalForm').on('hidden.bs.modal', function () {
$('#modal_content').empty();
$('#modalForm').modal('dispose');
$(this).find('form').trigger('reset');
$(this).find('form')[0].reset();
//$('.modal').remove(); // this prevents future modals
});
如有任何帮助,我们将不胜感激。
这可能是一个绑定问题,您在 #modalForm
上绑定了 hidden.bs.modal
,因此除非您在某个时候不取消绑定,否则相同的代码将始终以旧值执行。
尝试通过将此代码 $('#modalForm').off('hidden.bs.modal')
放在 $('#modalForm').on('hidden.bs.modal', function () {[...]
之前来取消绑定,如果它不起作用,您可能只想使用 $('#modalForm').one('hidden.bs.modal')
将其绑定一次。
我有一个通过 jquery 提交数据的表单,然后通过 bootstrap 模式显示。
但是,问题是,如果我快速尝试为表单提供新值,那么模态主体有时不会显示新计算的值,而是显示旧的缓存值。
如何销毁 bootstrap 4 中的模态缓存数据?我已经尝试了各种 bootstrap3 技巧,但它就是行不通,我仍然断断续续地看到旧的缓存数据。
这是我试过的。
$('#modalForm').on('hidden.bs.modal', function () {
$('#modal_content').empty();
$('#modalForm').modal('dispose');
$(this).find('form').trigger('reset');
$(this).find('form')[0].reset();
//$('.modal').remove(); // this prevents future modals
});
如有任何帮助,我们将不胜感激。
这可能是一个绑定问题,您在 #modalForm
上绑定了 hidden.bs.modal
,因此除非您在某个时候不取消绑定,否则相同的代码将始终以旧值执行。
尝试通过将此代码 $('#modalForm').off('hidden.bs.modal')
放在 $('#modalForm').on('hidden.bs.modal', function () {[...]
之前来取消绑定,如果它不起作用,您可能只想使用 $('#modalForm').one('hidden.bs.modal')
将其绑定一次。