У меня есть кнопка отправки, которая, когда пользователь нажимает кнопку отправки, я хочу запустить div с fadein() в jquery, из той же функции im, вызывающей другую функцию, называемую monthReport(), но этот fadein div вызывается после вызывается montlyReport и его функциональность завершена
<script type="text/javascript">
$(function () {
$("#submitbtn").click(function () {
$("#loading").fadeIn();
monthlyReport($(this));
});
});
function monthlyReport(Obj1) {
//some transactions
alert('test');
}
<div id="loading">
<div id="loadingcontent">
<p id="loadingspinner">
Searching things...
</p>
</div>
</div>
мое требование здесь в том, что $ ("# loading"). fadeIn(); должен срабатывать первым, а затем MonthlyReport() может продолжать свои транзакции
Установите вызов MonthlyReport, как только функция fadeIn() будет завершена:
$(function () {
$("#submitbtn").click(function () {
var self = this;
$("#loading").fadeIn('slow', function() {
monthlyReport($(self));
});
});
});
function monthlyReport(Obj1) {
//some transactions
alert('test');
}
EDIT: Измененный код, чтобы установить значение переменной self
в качестве значения этого в обработчике кликов.
Как это:
$(function () {
$("#submitbtn").on('click', function () {
$("#loading").fadeIn('slow', function() {
monthlyReport($(this));
});
});
});
function monthlyReport(Obj1) {
//some transactions
alert('test');
}