p.s.
Удалось запустить так:
var http = require('http');var url = require('url');var server = new http.Server(function(req,res){ var uparse = url.parse(req.url,true); res.end(uparse.query.msg); console.log(req.method,req.url);});server.listen(1337, '127.0.0.1');
Я так понимаю res.end() убивает сервер, или как?
И все же объясните мне, как вообще это работает?---------- Добавлено 23.01.2015 в 06:41 ----------немного изменил чтобы понять
var http = require('http'); var url = require('url'); var arr = []; var server = new http.Server(function(req,res){ var uparse = url.parse(req.url,true); arr.push(uparse.query.msg); res.writeHead(200,{"Content-Type": "text/html"}); var str = ''; for(i=0;i<arr.length;i++){ if(typeof(arr)==='undefined'){ continue; } str += '<p>'+arr+'</p>'; } res.end(str); }); server.listen(1337, '127.0.0.1');
оказывается что массив всегда хранит все для всех клиентов? тут нет такого чтото вроде сессий в PHP?
добавил nowrap и ширину 1% к td в css, и сделал так
var cols = $('.table-list tr').first().find('th').length; console.log('Колво столбцов: '+cols); $('.table-list tr td:last-child,.table-list th td:last-child').width('auto');
Вроде как надо работает!
siv1987, а то что я написал с интервалом, очень плохо?
siv1987, но при этом должна продолжать жить страница, иначе какой смысл делать ajax запрос?
siv1987, в таком случает висит страница, особенно если файлы большие
вот я набодяжил решение, главное работает)
if(sel.length>0){ console.log('Saved files, total fields: '+sel.length); function sendFile(fd){ $.element.stateUpload = true; $.ajax({ type: 'POST', url: HOST+'element/uploadFile', data: fd, processData: false, contentType: false, success: function(data) { $.element.stateUpload = false; console.log(data); }, error: function(data) { $.element.stateUpload = false; console.log(data); } }); } var obFD = []; $.each(sel,function(){ var fd = new FormData(); fd.append('elementID', data.elementID); fd.append('type',$(this).data('file')); var file = $(this)[0].files[0]; if($(this).hasAttr('multiple')){ var input = document.querySelector('[data-file="'+$(this).data('file')+'"]').files; for (var i = 0; i < input.length; i++){ var fd = new FormData(); fd.append('elementID', data.elementID); fd.append('type',$(this).data('file')); fd.append('file',input); obFD.push(fd); } }else{ fd.append('file', file); obFD.push(fd); } }); var i = 0; var t = setInterval(function(){ if(!$.element.stateUpload){ sendFile(obFD); i++; } if(i==obFD.length){ clearInterval(t); $.wnd.close(true); $.sysMsg.showOk(data.msg); return; } },1000); return; }
lutskboy, нет, не подойдет. Я думаю надо правильно интервал написать и все ок будет
работает, но тут приклеиваются лишние символы в начало---------- Добавлено 09.01.2015 в 00:39 ----------тут конечно можно сделать str_replace в $val символов "t;" и "=", но всеже как в регулярке это сделать?
А вот если так регулярку запилить:
/:([\w_]+)\s*([^<>=]{1,2})\s*(["\'].*?["\']|[^\s()]+)/
то вывод такой (тот же пример)
siv1987, так ничего не изменилось:
preg_match_all('/:([\w_]+)\s*([\x3C\x3E=]{1,2})\s*(["\'].*?["\']|[^\s()]+)/', $str, $out);