Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   объекте есть свойство, текст с вдойными ковычками, как его целиком вытащить (https://javascript.ru/forum/css-html/76475-obekte-est-svojjstvo-tekst-s-vdojjnymi-kovychkami-kak-ego-celikom-vytashhit.html)

Sergey1986 15.01.2019 01:03

объекте есть свойство, текст с вдойными ковычками, как его целиком вытащить
 
Доброго времени суток!

есть объект

data {
0: {id: "1", name: "ООО "Газпром""}
1: {id: "2", name: "ООО 'Шел'"}
}

так вот если
$(data[0].name)
выведет только ООО

а если
$(data[1].name)
выведет только ООО 'Шел'

вопрос, как мне вытаскивать с двойными ковычками? что бы текст не обрубался? З


заранее спасибо!

Sergey1986 15.01.2019 01:11

думаю стоит добавить это приходит json и это данные после JSON.parse

Sergey1986 15.01.2019 01:14

я так понимаю надо на этапе encode данныех в php все ковычки заикронировать?

laimas 15.01.2019 01:16

"ООО "Газпром"" - такого не может быть, поэтому и получаем только первое заключенное в кавычки. Это ошибку будет видно и при подсветке кода:

data {
0: {id: "1", name: "ООО "Газпром""}
1: {id: "2", name: "ООО 'Шел'"}
}


Причина - невалидный JSON.

laimas 15.01.2019 01:29

Цитата:

Сообщение от Sergey1986
я так понимаю надо на этапе encode данныех в php все ковычки заикронировать?

json_encode это так по умолчанию делает. Вот такой валидный будет по умолчанию

[{"id":1,"name":"\u041e\u041e\u041e \"\u0413\u0430\u0437\u043f\u0440\u043e\u043c\""},{ "id":2,"name":"\u041e\u041e\u041e '\u0428\u0435\u043b'"}]

или с константой JSON_UNESCAPED_UNICODE

[{"id":1,"name":"ООО \"Газпром\""},{"id":2,"name":"ООО 'Шел'"}]

Sergey1986 15.01.2019 01:37

хм...вот в response все так и вяглядит
"data":{"ludaed":[{"id":"1","name":"Человек \"Махно\""},{"id":"2","name":":Животно е 'Мышка'"}]}

после я его через JSON.parse

ничего не понимаю.....))))

Sergey1986 15.01.2019 01:38

в коносоли то если ручками набрать этот свойство...оно выдаеться как положено с ковычками (не обрубаеться)

Sergey1986 15.01.2019 01:40

и при выполнении скрипта console.log(data.ludaed[0].name)
выводит
Человек "Махно"

laimas 15.01.2019 01:49

Вы либо что-то не то делаете, а json нормальный, либо даже и не знаю что и сказать можно. Во-первых при том, что показывается ну не может парсер получить объект никак:

var jsn = '{"id":1,"name":"ООО "Газпром""}';

try {
    jsn = JSON.parse(jsn)
} catch (e) {
    alert(e) //ошибка в позиции кавычки
}


А если получаете, то все не так как представляется вам.

Sergey1986 15.01.2019 01:50

а вот есть это переменную в ставить в
' + strVar + '
обрубает
((((


Часовой пояс GMT +3, время: 11:54.