11.01.2019, 18:47
|
Профессор
|
|
Регистрация: 02.01.2019
Сообщений: 151
|
|
Записать данные из переменных в локальный JSON
Есть локальный JSON вида:
Код:
|
{
"1": {
"title":"My Lesons",
"autor":"CryNet",
"date":"10.01.19",
"text":"Текст"
},
"2": {
"title":"My articles",
"autor":"CryNet",
"date":"09.01.19",
"text":"Текст текст"
}
...
} |
JSON получен по AJAX. Мне необходимо в этот JSON записать данные из нескольких переменных:
var head = document.getElementById('setHead').value;
var date = document.getElementById('setDate').value;
var autor = document.getElementById('setAutor').value;
var text = document.getElementById('setText').value;
Как мне записать данные из переменных в конец локального JSON?
|
|
11.01.2019, 19:12
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
CryNet,
head это title?
|
|
11.01.2019, 19:16
|
Профессор
|
|
Регистрация: 02.01.2019
Сообщений: 151
|
|
Название статьи
|
|
11.01.2019, 19:30
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
CryNet,
var data = {
"1": {
"title":"My Lesons",
"autor":"CryNet",
"date":"10.01.19",
"text":"Текст"
},
"2": {
"title":"My articles",
"autor":"CryNet",
"date":"09.01.19",
"text":"Текст текст"
}
}
var index = Object.keys.length;
data[index] = { "title": head,
"autor": autor,
"date": date,
"text": text}
|
|
11.01.2019, 22:50
|
Профессор
|
|
Регистрация: 02.01.2019
Сообщений: 151
|
|
Сообщение от рони
|
рони,
...
|
Спасибо больше за ответ, но что-то не работает...
Я создал проект на codepen, чтобы было понятно: ссылка
var index = Object.keys.length;
data[index] = { "title": head,
"autor": autor,
"date": date,
"text": text
}
В переменной index хранится 1, хотя записей две. При срабатывании кода данные не записываются
|
|
11.01.2019, 23:03
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
CryNet,
var index = Object.keys.length + 1;
|
|
11.01.2019, 23:34
|
Профессор
|
|
Регистрация: 02.01.2019
Сообщений: 151
|
|
Сообщение от рони
|
CryNet,
var index = Object.keys.length + 1;
|
Та проблема не в этом. Даже если вручную прописать незанятый ключ. Но ваш способ я тоже пробовал
|
|
12.01.2019, 00:01
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
CryNet,
пропустил скобки
var index = Object.keys(data).length + 1;
|
|
12.01.2019, 00:02
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,105
|
|
CryNet,
<script>
var data = {
"1": {
"title":"My Lesons",
"autor":"CryNet",
"date":"10.01.19",
"text":"Текст"
},
"2": {
"title":"My articles",
"autor":"CryNet",
"date":"09.01.19",
"text":"Текст текст"
}
}
var head = autor = date = text = "test";
var index = Object.keys(data).length + 1;
data[index] = { "title": head,
"autor": autor,
"date": date,
"text": text}
document.write(JSON.stringify(data, null, 4))
</script>
|
|
12.01.2019, 19:30
|
Профессор
|
|
Регистрация: 02.01.2019
Сообщений: 151
|
|
Спасибо
|
|
|
|