-
Posts
1,770 -
Joined
-
Last visited
-
Days Won
9
Content Type
Profiles
Forums
Calendar
Store
Everything posted by cyklop77
-
c mysql удобно работать при помощи phpMyAdmin. скажите пожалуйста, существуют ли подобные утилиты для работы с localstorage браузера? я сейчас смотрю содержимое localstorage при помощи console.log, но это неудобный способ
-
админы, удалите пожалуйста тему. в фидле всё работает, проблема где-то в дебрях моего проекта
-
помогите пожалуйста понять почему в backbone push работает неочевидным способом пример1 (не рабочий): APP.Graph = Backbone.Model.extend({ defaults: { title: undefined, dots: new Array() } )} var graph = new APP.Graph(); graph.attributes.dots.push([1, 1]); консоль выводит сообщение об ошибке: Uncaught TypeError: this.model.attributes.dots.push is not a function пример 2 (не рабочий): APP.Graph = Backbone.Model.extend({ defaults: { title: undefined, dots: new Array() } )} var graph = new APP.Graph(); var dots = this.model.get('dots'); dots.push([1, 2]); this.model.set({'dots': dots}); консоль выводит сообщение об ошибке: Uncaught TypeError: this.model.attributes.dots.push is not a function пример 3 (рабочий): APP.Graph = Backbone.Model.extend({ defaults: { title: undefined, dots: new Array() } )} var graph = new APP.Graph(); var arr = []; this.model.set({dots: arr}); var dots = this.model.get('dots'); dots.push([1, 2]); this.model.set({'dots': dots}); ошибок нет. пуш сработал
-
помогите пожалуйста добавить массив в массив: defaults = { title: 'qwerty', dots: new array() } defaults.dots.push([1 , 2]); console.log(defaults); консоль выводит такую ошибку: https://jsfiddle.net/bwz2u6vc/ в будущем планируется, что dots будет содержать большой набор массивиков: [1, 2], [1, 3], [1, 32], [21, 2], .......
-
ребята, научите пожалуйста как хранить справочные данные в объекте есть одностраничное веб-приложение на backbone. смысл его в том, что пользователь может создавать графики и заполнять их точками. первую часть я сделал. вот конструктор модели для графика: {APP.Graph = Backbone.Model.extend({ defaults: { title: undefined, yMax: undefined, yMin: undefined, yPeriod: undefined, xMax: undefined, xMin: undefined, xPeriod: undefined, dots: [] } }); как видите, у каждого графика есть название и список характеристик для вертикальной и горизонтальной оси. так же есть свойство dots, которое является массивом. в нём я планирую хранить набор точек. формат такой: [ [23, 23], [23, 23], [23, 23], [23, 23] ] вопрос. правильнй ли я выбрал способ для хранения данных о наборе точек? может быть уже существует типовое решение для такой задачи? дело ещё в том, что пока для хранения любых данных я использую localstorage(это механизм подобный cookie, который предоставляет современный браузер). но потом я планирую использовать mysql. не возникнет ли в этом случае проблем с переходом? всё таки в БД для подобных целей используется ещё одна таблица(справочник)
-
...я конечно понимаю, что простой такой. но всё таки, если кому не лень покопаться в куче кода, то подскажите пожалуйста почему в моём виджете localstorage не сохраняет данные после обновления странички браузера вот популярный в интернетах пример: http://html/js/EXAMPLES/bb_todos/ он же на гитхабе: https://github.com/tastejs/todomvc/tree/master/examples/backbone в нём всё работает как нужно. то есть если закрыть вкладку браузера и открыть снова, то данные не сбросятся. а вот моя попытка сделать подобный виджет: prozaik.16mb.com/works/weekend_projects/graph_kalinin/ гитхаб: https://github.com/zlodiak/graph_kalinin_3 я делал по аналогии, но в моём случае после обновления страницы(или закрытия вкладки) данные сбрасываются. и я не знаю в чём причина
-
сложность в том, что приложение может вырасти. или им заняться другой человек
-
подскажите пожалуйста как поступать в следующей ситуации есть метод объекта: EnterKeyHandler: function (e) { if (e.which === 13) { this.editEnd(); } } здесь цифра 13 это код клавиши 'enter'. в приложении я её использую только один раз, только в этом месте. стоит ли выносить её в глобальную переменную?
-
помогите пожалуйста починить скрипт в блоке инициализации я определил несколько переменных объекта, которые указывают на определённые элементы. в одном из меодов я при участии этих переменных хотел бы изменить видимость элементов. но не получается код: window.APP = window.APP || {}; APP.GraphLinkView = Backbone.View.extend({ initialize: function() { this.editFieldElem = this.$el.find('.edit_Field'); this.titleElem = this.$el.find('.graph_title'); this.removeIconElem = this.$el.find('.glyphicon-remove'); this.editIconElem = this.$el.find('.glyphicon-edit'); console.log(this.editFieldElem); console.log(this.titleElem); console.log(this.removeIconElem); console.log(this.editIconElem); }, template: _.template($('#graphsListItemTemplate').html()), tagName: 'div', className: 'list-group-item', render: function() { this.$el.html(this.template({ title: 'qwerty', cid: 1 })); $('#content').html(this.$el); return this; }, events:{ 'blur .edit_field': 'editEnd', 'click .glyphicon-edit' : 'editBegin' }, editEnd: function() { console.log('e end'); this.editFieldElem.find('.edit_field').hide(); this.titleElem.find('.graph_title').show(); this.editIconElem.find('.glyphicon-edit').show(); }, editBegin: function() { console.log('e beg'); this.editFieldElem.find('.edit_field').show().focus(); this.titleElem.find('.graph_title').hide(); this.editIconElem.find('.glyphicon-edit').hide(); } }); new APP.GraphLinkView().render();
-
скажите пожалуйста стоит ли выносить подобные простые функции в хелпер или это параноя? changeColorFields: function(selector, borderColor) { $(selector).css({ border: '1px solid ' + borderColor }); } у меня в программе эта функция используется раз 10
-
да, всё верно
-
помогите пожалуйста исправить скрипт проблема в том, что при клике на #button в консоль не выводится "hello world". а должно бы потому что я повесил событие так: events:{ 'click #button' : 'createGraph' },
-
помогите пожалуйста решить проблему есть такой объект: defaults = { title: undefined, yMax: undefined, yMin: undefined, yPeriod: undefined, xMax: undefined, xMin: undefined, xPeriod: undefined, dots: {} } мне нужно сформировать массив, состоящий из свойств, которые имеют тип "не объект". то есть должен получиться такой массив: [title, yMax, yMin, yPeriod, xMax, xMin, xPeriod]
-
спасибо. это помогло var dateCorrect = model['date'].replace(/\s/ig, 'T');
-
другой формат я получить не смогу, поэтому и обратился за помощью
-
помогите пожалуйста разбить строку даты по составляющим пример. в chrome он работает(в консоль выводятся значения), а в firefox он не работает(в консоль выводятся ошибочки)
-
памятка дизайнеру мир станет добрее, если каждый дизайнер хотя бы раз прочтёт (хотя бы)это(
-
классику
-
...может быть кроме меня это никому смешным не покажется, но эта запись в редмайне от заказчика однозначно сделала мой день ps: и это ещё при том, что этот чел просит вставить символы перевода строки в разметку между слайдами карусели... я по его просьбе сначала BR вставил, но он просит именно \n
-
помогите пожалуйста решить проблему часто использую jquery-функцию $.ajax. поэтому решил вынести её в отдельный объект следующим образом: var ajaxRequest = function(dataObj, requestFileName) { $.ajax({ url: 'js/project/ajax/' + requestFileName, type: "post", data: dataObj, success: function(json) { console.log('--' + JSON.parse(json)); return JSON.parse(json); } }); }; и затем могу хоть 100 раз обращаться к ней из любого места программы следующим лаконичный способом: var dotsObj = new ajaxRequest({graph_id: graph_id}, 'getDots.php'); проблема в том, что JS асинхронен. то есть ajaxRequest только ещё получает данные с сервера, а сценарий выполняется дальше и соответственно уже обрабатывает dotsObj (а он ещё не получен) подскажите пожалуйста как можно заставить сценарий ждать ответа ajaxRequest. например в той же функции $.ajax блок succes как раз ждёт когда данные придут с сервера. мне нужен такой же, но велосипед)
-
помогите пожалуйста повернуть каждую цифру на 90 градусов. результат должен выглядеть так. у меня пока получается только так вообще я пытаюсь нарисовать систему координат. с вертикальной осью проблем нет
-
это помогло
-
а мне и нужно только количество корневых элементов console.log({ 123 : ""}.length); VM3248:2 undefined ну и что что ассоциативный. в любом случае это просто свойство объекта
-
помогите пожалуйста разобраться 1 пример js-скрипт делает ajax-запрос и получает ответ в виде массива. вывести в консоль количество элементов в массиве через .length получается $.ajax({ url: 'js/project/ajax/getDots.php', type: "post", data:{graph_id: graph_id}, success: function(json) { json = JSON.parse(json); console.dir(json); console.log(json.length); } }); $sql = 'SELECT * FROM `dots` WHERE `graphs_id` = ' . $_POST["graph_id"]; $result = mysql_query($sql); // or die(mysql_error()); $response = array(); if($result){ while($row = mysql_fetch_array($result)) { $unit = array(); $unit["id"] = $row["id"]; $unit["x_coord"] = $row["x_coord"]; $unit["y_coord"] = $row["y_coord"]; $unit["decsription"] = $row["decsription"]; $response[] = $unit; }; } else{ $response = 'error'; } print(json_encode($response, JSON_UNESCAPED_UNICODE)); 2 пример js-скрипт делает ajax-запрос и получает ответ в виде многомерного массива. вывести в консоль количество элементов в массиве через .length не получается $.ajax({ url: 'js/project/ajax/getDots.php', type: "post", data:{graph_id: graph_id}, success: function(json) { json = JSON.parse(json); console.dir(json); console.log(json.length); } }); $sql = 'SELECT * FROM `dots` WHERE `graphs_id` = ' . $_POST["graph_id"]; $result = mysql_query($sql); // or die(mysql_error()); $response = array(); if($result){ while($row = mysql_fetch_array($result)) { $unit = array(); $unit["id"] = $row["id"]; $unit["x_coord"] = $row["x_coord"]; $unit["y_coord"] = $row["y_coord"]; $unit["decsription"] = $row["decsription"]; $response[$row["id"]] = $unit; }; } else{ $response = 'error'; } print(json_encode($response, JSON_UNESCAPED_UNICODE)); не пойму почему в одном случае через length можно получить размер массива, а в другом - нет
-
ребятушки, а ещё не подскажете почему кодировка слетает? у меня всё работало, но после того как я раскидал код по разным файлам, ответ ajax вместо кириллических символов выводит коды. здесь я в целях отладки сделал 2 вывода: <?php header("Content-type: text/html; charset=utf-8"); error_reporting(0); require('connectDB.php'); $connect = mysql_connect($host,$user,$password); mysql_query("SET NAMES utf8"); mysql_select_db($database); $sql = 'SELECT `title` FROM `graphs`'; $result = mysql_query($sql); // or die(mysql_error()); $response = array(); if($result){ while($row = mysql_fetch_array($result)) { $response[] = $row["title"]; }; } else{ $response = 'error'; } print_r($response); print(json_encode($response)); ?> в результате при прямом обращении к скрипту браузер выводит: Array ( [0] => ыва [1] => ввв [2] => ываываывавы ) ["\u044b\u0432\u0430","\u0432\u0432\u0432","\u044b\u0432\u0430\u044b\u0432\u0430\u044b\u0432\u0430\u0432\u044b"] само-собой пробовал все файлы пересохранять в utf8 без бом