我们在我们的网站上使用jQuery 表单插件。我们需要能够在所有表单上发生提交时显示加载 gif。到目前为止,我已经能够像下面这样完成这项工作
$("#uploadAssetImageForm").ajaxForm({
dataType: 'json',
beforeSubmit: function () {Cvrs.SetLoading(true, '#uploadAssetImageForm')},
success: function(asset) {
Cvrs.SetLoading(false, '#uploadAssetImageForm');
$("#uploadAssetImageDiv").dialog("close");
$(":input", "#uploadAssetImageDiv").not(':button, :submit, :reset').val('').removeAttr('checked').removeAttr('selected');
ReplaceAsset(asset);
}
});
特别是我正在谈论的部分是 beforeSubmit 函数和再次调用以在成功时将其设置为 false。
设置加载仅显示加载 gif 和禁用的表单按钮
function(isLoading, form) {
isLoading ? $(form + ' input[type="submit"]').attr("disabled", true) :
$(form + ' input[type="submit"]').removeAttr("disabled");
isLoading ? $(form + ' .loading-animation').show() :
$(form + ' .loading-animation').hide();
有什么方法可以调用 ajaxform 在 beforeSubmit 上运行该代码并成功以及可能存在的任何其他代码(尽管首先运行加载的东西)还是我必须通过每个案例并添加这在?
我知道我必须将加载参考放在每个表单中,但这很有意义,因为不同的表单可能需要在不同的位置加载 gif