Anonymous
не работает твоя регулярка
Anonymous
возможно ты хотел так написать: https://jex.im/regulex/#!flags=&re=%5C%5B(%5E%5C%5D%2B)%5C%5D
Matvey
работал ли кто-нибудь со Stomp? какую библиотеку использовать на клиенте?
Matvey
https://www.npmjs.com/package/stompjs
Matvey
@nobodywithbody это оно? )
Kir
http://jmesnil.net/stomp-websocket/doc/
Kir
если я правильно тебя понял
Suicide Liza
работает?
Suicide Liza
телега
Игорь
нет
Suicide Liza
🙂
Eugene
Ребята, привет) помогите пожалуйста. Есть объект var checkedButtons = { Name: '', // Значение Name по умолчанию Checked: false, // Метод отображающий значение поля checked }; я создаю его новые экземпляры в циле forEach. Можно как то узнать какое количество экземпляров этого объекта я уже создал?
Konstantin
так ты их в массив насуй и смотри length
🦜
ща бы в foreahe это делать, а не мапать
Eugene
ща бы в foreahe это делать, а не мапать
я в forEach для прохожу кучу элементов и по нажатию на отдельный создаю этот объект
Eugene
Оверинжиринг конечно, но я просто не знаю как это можно лучше сделать и проще :)
Aleksey
Зачем? Чтобы отправлять на сервер только "выделенные"?
Eugene
Зачем? Чтобы отправлять на сервер только "выделенные"?
чтобы если количество созданнхы объектов больше 4 выдавать запрет на дальнейшее выделение объектов на форме (там куча инпутов и массив - это куча инпутов)
Aleksey
Будет порождать баги. Ты можешь посчитать явное количество выделенных элементов в DOM? Например, вот так: document.querySelectorAll('input[type="checkbox"]:checked').length
Сергей
подскажите как вот это передать в FormData? services: { site: document.querySelector('input[name="site"]').checked ? 'on' : '', mobile: document.querySelector('input[name="mobile"]').checked ? 'on' : '', logo: document.querySelector('input[name="logo"]').checked ? 'on' : '', identic: document.querySelector('input[name="identic"]').checked ? 'on' : '', other: document.querySelector('input[name="other"]').checked ? 'on' : '' }, чтобы был вложенный массив и обратиться на сервере [services][logo]
Сергей
https://developer.mozilla.org/en-US/docs/Learn/HTML/Forms/Sending_forms_through_JavaScript
А если у меня массив объектов таких как services?
Сергей
вложенный цикл с проверкой вложеность?
Andrew
key => JSON.stringify(Object)
Andrew
можешь попробовать
Сергей
key => JSON.stringify(Object)
а если есть объекты в которых текст вставлен, а не объект?)
Andrew
)
Andrew
JSON.stringify('test'); "test"
Сергей
)
вот к примеру message: message_field.value, services: { site: document.querySelector('input[name="site"]').checked ? 'on' : '', mobile: document.querySelector('input[name="mobile"]').checked ? 'on' : '', logo: document.querySelector('input[name="logo"]').checked ? 'on' : '', identic: document.querySelector('input[name="identic"]').checked ? 'on' : '', other: document.querySelector('input[name="other"]').checked ? 'on' : '' },
Сергей
JSON.stringify('test'); "test"
просто я уже так делал и че то ошибку получал в ответ, попробую еще раз
Andrew
сек
Сергей
сек
На сервер что в таком случае приходит?
Сергей
сек
строки?
Andrew
JSON.stringify({message: 'test', services: { site: 1 ? 'on' : '', }}); "{"message":"test","services":{"site":"on"}}" "{"message":"test","services":{"site":"on"}}" на сервер прилетит
Andrew
json
Сергей
окей
Andrew
а что за ошибка?
Сергей
а что за ошибка?
У меня еще файл отправляется так то)
Сергей
а что за ошибка?
Нет ошибок сейчас, просто файл ведь так не придёт
Andrew
тебе нужно файл отправить ?
Сергей
мне нужно форму с файлом и чекбоксами которые относятся к services )
Сергей
ну и поля
Сергей
всё ок, только массив чекбоксов хз как
Сергей
в formdata
Сергей
тебе нужно файл отправить ?
у меня вот так происходит let formData = new FormData(); for (let field in body) { if (!body.hasOwnProperty(field)) { continue; } formData.append(field, body[field]); }
Сергей
но тут встречается services с вложениями и косяк на сервер приходит
Andrew
formData.append(field, JSON.stringify(body[field]));
Andrew
на серве декодишь
Andrew
серв на чем?
Сергей
Сергей
php
Сергей
на серве декодишь
Файл разве норм так придёт?
Andrew
ну с файлами там отдельная тема)
Andrew
сек найду
Сергей
ну с файлами там отдельная тема)
Вот) поэтому мне не вариант так передавать) в этом и вопрос как передать объект такой с чекбоксами без болезненно)
Сергей
Проще не будет сделать вложенный цикл?
Andrew
я чутка запутался)
Andrew
ты хочешь файл отправить + обьект ?
Сергей
сек
Сергей
let body = { accept: document.querySelector('input[name="accept"]').checked ? 'on' : '', name: name_field.value, phone: phone_field.value, email: email_field.value, "url-site": site_field.value, message: message_field.value, services: { site: document.querySelector('input[name="site"]').checked ? 'on' : '', mobile: document.querySelector('input[name="mobile"]').checked ? 'on' : '', logo: document.querySelector('input[name="logo"]').checked ? 'on' : '', identic: document.querySelector('input[name="identic"]').checked ? 'on' : '', other: document.querySelector('input[name="other"]').checked ? 'on' : '' }, file: file_input.files[0] }; let formData = new FormData(); for (let field in body) { if (!body.hasOwnProperty(field)) { continue; } formData.append(field, JSON.stringify(body[field])); }
Сергей
объект body передать с помощью fetch на сервер
Сергей
передаётся всё круто, кроме services
Сергей
как поправить цикл чтобы services передавался корректно)
Сергей
и можно было на сервере принять как [services][logo]
Andrew
сек)
Andrew
xhr.sendAsBinary(data);
Andrew
почитай про это
Сергей
xhr.sendAsBinary(data);
Что это даст?)
Сергей
xhr.sendAsBinary(data);
Это старая тема)
Andrew
да)