Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Принять массив от php и передать в js [2]
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » Принять массив от php и передать в js

Страниц (2): « 1 [2]
 

16. armancho7777777 - 01 Апреля, 2013 - 11:29:16 - перейти к сообщению
nerv, ТС использует jQ, а там есть функция $.parseJSON(json_string)
17. DeepVarvar - 01 Апреля, 2013 - 11:50:41 - перейти к сообщению
nerv пишет:
есть библиотека для старых ie
Зачем библиотека, когда вопрос решается кроссбраузерно в одну строчку?
18. nerv - 01 Апреля, 2013 - 11:52:25 - перейти к сообщению
armancho7777777 пишет:
ТС использует jQ, а там есть функция $.parseJSON(json_string)

согласен. Возможно, жуквери сам разбирает джейсон, если тип данных указан как джейсон или он может идентифицировать его как джейсон. Не помню Улыбка Надо доки читать.

Если сам разбирает, то об этом писали выше
tuareg пишет:
А смысл? Там и так json(в смысле объект)


p.s.: да, разбирает Улыбка

p.p.s: вместе с тем, на будущее, возможно кому-нибудь пригодится моя ссылка )
19. armancho7777777 - 01 Апреля, 2013 - 12:03:30 - перейти к сообщению
nerv пишет:
Возможно, жуквери сам разбирает джейсон, если тип данных указан как джейсон или он может идентифицировать его как джейсон. Не помню

Радость
Плохо, когда не помнишь.
Особенно когда не знаешь ))
Шутка )
По существу:
Из исходников jQ1.7
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. // .........
  3.  
  4. // JSON RegExp
  5. rvalidchars = /^[\],:{}\s]*$/,
  6.  
  7. // .........
  8.  
  9. parseJSON: function( data ) {
  10.         if ( typeof data !== "string" || !data ) {
  11.                 return null;
  12.         }
  13.  
  14.         // Make sure leading/trailing whitespace is removed (IE can't handle it)
  15.         data = jQuery.trim( data );
  16.  
  17.         // Attempt to parse using the native JSON parser first
  18.         if ( window.JSON && window.JSON.parse ) {
  19.                 return window.JSON.parse( data );
  20.         }
  21.  
  22.         // Make sure the incoming data is actual JSON
  23.         // Logic borrowed from http://json.org/json2.js
  24.         if ( rvalidchars.test( data.replace( rvalidescape, "@" )
  25.                 .replace( rvalidtokens, "]" )
  26.                 .replace( rvalidbraces, "")) ) {
  27.  
  28.                 return ( new Function( "return " + data ) )();
  29.  
  30.         }
  31.         jQuery.error( "Invalid JSON: " + data );
  32. }
  33.  
  34. // .........
  35.  
  36.  
20. DeepVarvar - 01 Апреля, 2013 - 13:58:00 - перейти к сообщению
armancho7777777 пишет:
if ( window.JSON && window.JSON.parse )
Вот, даже тут проверяют доступность этого объекта, а выше писали люди что мол IE7 фтопку... Эхх..
21. nerv - 02 Апреля, 2013 - 03:09:13 - перейти к сообщению
DeepVarvar пишет:
Вот, даже тут проверяют доступность этого объекта

в жуквери 2.0, наверное, уже не проверяют ) Зависит от того, поддержка каких браузеров требуется.

http://code[dot]jquery[dot]com/jquery-2[dot]0[dot]0b2[dot]js

CODE (javascript):
скопировать код в буфер обмена
  1. parseJSON: JSON.parse,
22. armancho7777777 - 02 Апреля, 2013 - 04:30:49 - перейти к сообщению
nerv пишет:
в жуквери 2.0, наверное, уже не проверяют ) Зависит от того, поддержка каких браузеров требуется.

Потому я и привел jQ 1.7
Речь ведь шла о
nerv пишет:
по ссылке, кот. я приводил, есть библиотека для старых ie

 

Powered by ExBB FM 1.0 RC1