Добавление постов без перезагрузки страницы by uWeb для uCoz
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
<?if($PAGE_ID$='threadpage')?><script type="text/javascript"> function haveFiles() { var f = false; $("input.uplFileFl").each(function() { if ($(this).val()) f = true; }); return f } document.addform.onsubmit = function() { var namewnd = "w" + Math.floor(Math.random() * 999); _uWnd.alert('<img src="/.s/img/wd/3/ajax.gif" border="0" alt="Загрузка">', 'Загрузка', { name: namewnd, w: 250, h: 80, tm: 0 }); $("#frF16").attr("disabled", true); if (haveFiles()) { _uPostForm($("form[name='addform']"), { success: function(dt) { parseResult(dt, namewnd); } }) } else { $.post("/forum", $("form[name='addform']").serialize(), function(dt) { parseResult(dt, namewnd) }) }; return false; }; function parseResult(dt, namewnd) { var err = $("#frM2", dt).text(), thmurl = $("a:first", dt).attr("href"); if (err) { _uWnd.content(namewnd, '<center>' + err + '</center>'); _uWnd.setTitle(namewnd, 'Ошибка'); $("#frF16").attr("disabled", false); setTimeout(function() { _uWnd.close(namewnd) }, 2000); } else if ($(dt).text().indexOf("Ответ добавлен") > -1) { $("textarea#message").val(""); $("form[name='addform'] input:file").val(""); _uWnd.content(namewnd, '<center>Добавлено</center>'); _uWnd.setTitle(namewnd, 'Успех'); $("#frF16").attr("disabled", false); setTimeout(function() { _uWnd.close(namewnd) }, 2000); setTimeout(function() { <? if $PAGE_ID$ = 'threadpage' ?> $(".gDivRight:first").load(thmurl + "?" + Math.floor(Math.random() * 9999) + " .gDivRight:first"); setPnt(thmurl); <? endif ?> <? if $PAGE_ID$ = 'addthread' or $PAGE_ID$ = 'addpoll' ?> setPnt($("td.forumNamesBar:first a.forumBarA:last", dt).attr("href"), true); <? endif ?> }, 50); } else { _uWnd.content(namewnd, 'Во время отправки произошла обишка'); _uWnd.setTitle(namewnd, 'Не удалось'); $("#frF16").attr("disabled", false); setTimeout(function() { _uWnd.close(namewnd) }, 2000); } }; </script><?endif?> |