Зависает сервер.
Вообщем такая проблема. Есть jquery скрипт, который составляет массив, потому отправляет этот массив на обработчик. Сам обработчик обрабатывает этот массив и составляет INSERT запрос в базу, по такому типу:
INSERT (item1, item2) VALUES ('1','1'); Так вот, всё вроде бы и работает, но когда это всё происходит сервер вообще не отвечает, тоесть на страницы зайти нельзя. И это происходит, пока он не добавит всё это в базу. :help: Я думаю, что может есть какая нибудь многозадачность в jquery? Просто я новичок в этом, и не знаю все возможности jquery. Вот код: var ars = []; $(document).ready(function() { var load_url = "ajax/sell"; jQuery.ajax(load_url).done(function(data) { data = JSON.parse(data); $.each(data, function(i, item) { $('#myitems').append('<div class="fa-hover col-md-3 col-sm-2" data-id="'+item.item_classid+'"><div class="box"><a href="" title="'+item.item_name+'" class="myitem" style="background: url('+item.item_img+') 50% 50% / auto 100% no-repeat;"></a></div></div>'); }); }).always(function() { jQuery("#load").hide(); }); $('#sell').click(function(){ jQuery("#loadinv").show(); jQuery.ajax("ajax/getinv").done(function(data) { data = JSON.parse(data); if(!data.success) { alert('Ошибка!'); jQuery("#loadinv").hide(); } $.each(data['rgInventory'], function(i) { ars.push(data['rgInventory'][i]['classid']); }); console.log(ars); $.ajax({ url: 'ajax/insert', type: 'POST', data: {ars: ars}, success: function(data) { console.log(data); } }); $("#myModal").modal(); }); }); });//ready |
Если не отвечает сервер то jquery тут не причем совсем. Jquery (как и весь javascript) работает на стороне клиента.
Единственное, что может быть плохого на стороне javascript. Это вы данные отправляете не одной командой. А начинаете доссить сервер серией команд. Если уходит одна команда, а ответ от нее очень долго не приходит. И на другие запросы сервер перестает отвечать. Ищите проблему в обработчике на стороне сервера. |
Часовой пояс GMT +3, время: 10:32. |