я вот нашел аналогичную тему http://community.livejournal.com/ru_perl/345451.html
(там ошибка такая, то проблема другая)
там написано, что ключи должны быть строками, тоже
{0: "bla-bla", 23: "bla"}
{"0": "bla-bla", "23": "bla"}
но что-то я не могу понять как мне тут сделать? (или может проболема вообще не в этом...)
var formData = { "text": +"+ $("input#text").val() + " };
...так и аналогично не работает вообще...
просто я текст раньше в json с форм не передавал раньше, не видел смысла, сейчас сделал, но не знал что будет геморой такой...
===
я не написал, тут гемороя много, сори...
;oo;o это не json, это то что ввести в поле textarea или с input
а потом $.toJSON(formData) это запакует
вот в отладке в фрейворке
info] *** Request 846 (0.257/s) [62425] [Thu Apr 15 08:59:05 2010] ***[debug] Body Parameters are:.-------------------------------------+--------------------------------------.| Parameter | Value |+-------------------------------------+--------------------------------------+| jsonData | {"text":"������������������"} |'-------------------------------------+--------------------------------------'[debug] "POST" request for "chat/add/1" from "127.0.0.1"[debug] Found sessionid "1d490742d9bad03df7ed1c8b31baca40dfd26dc7" in cookie[debug] Restored session "1d490742d9bad03df7ed1c8b31baca40dfd26dc7"[debug] Path is "chat/add"[debug] Arguments are "1"[info] Request took 0.350099s (2.856/s).------------------------------------------------------------+-----------.| Action | Time |+------------------------------------------------------------+-----------+| /begin | 0.006399s || /auto | 0.000740s || /chat/add | 0.286340s || -> /friends/found_friends | 0.003768s || -> /chat/count_add | 0.019538s || -> /comments_api/off_json | 0.003737s || /end | 0.001017s |'------------------------------------------------------------+-----------'[info] *** Request 847 (0.258/s) [62425] [Thu Apr 15 08:59:05 2010] ***
я передаю text, значение ������������������ с ним все номрально!
а вот я вставил
dfgdfgdfg;
получается такая фигня:
(Json где-то оборвался, получается??)
[info] *** Request 858 (0.252/s) [62425] [Thu Apr 15 09:00:59 2010] ***[debug] Body Parameters are:.-------------------------------------+--------------------------------------.| Parameter | Value |+-------------------------------------+--------------------------------------+| jsonData | {"text":"dfgdfgdfg |'-------------------------------------+--------------------------------------'[debug] "POST" request for "chat/add/1" from "127.0.0.1"[debug] Found sessionid "1d490742d9bad03df7ed1c8b31baca40dfd26dc7" in cookie[debug] Restored session "1d490742d9bad03df7ed1c8b31baca40dfd26dc7"[debug] Path is "chat/add"[debug] Arguments are "1"[error] Caught exception in MyApp::Controller::chat->add "unexpected end of string while parsing JSON string, at character offset 18 (before "(end of string)") at /home/x0/data4/MyApp/script/../lib/MyApp/Controller/chat.pm line 48"[info] Request took 0.141275s (7.078/s).------------------------------------------------------------+-----------.| Action | Time |+------------------------------------------------------------+-----------+| /begin | 0.006554s || /auto | 0.000691s || /chat/add | 0.007087s || /end | 0.000865s |'------------------------------------------------------------+-----------'
rtyug добавил 15.04.2010 в 23:58
bearman, тут проблема врядли на jquery json?
сори
если написать так и отправить эти данные с textarea или с input:
;oo;o
то ошибка эта, я так понял что ругается на кавычки?
add "unexpected end of string while parsing JSON string, at character offset 562 (before "(end of string)") at /home
если так:
то ошибки нету
ooo
часть HTML:
.... <script type="text/javascript" src="/dev/jquery-1.3.2.js"></script> <script type="text/javascript" src="/latest/jquery.json-2.2.js"></script>.... var formData = { "id_last":$("#last_id").html() , "array_new":array }; $.ajax({ type: "POST", url: "/chat/load/1", data:'jsonData=' + $.toJSON(formData),......
делаю так:
use JSON;use Encode; my $json_param = decode_json Encode::encode( 'utf8', $c->request->params->{jsonData} ) if ( $c->request->params->{jsonData} );.... # out json:sub off_json : Privat { my ( $self, $c, $user_details, $decode ) = @_; if ($decode) { $user_details->{text_cm} = Encode::decode( 'utf8', $user_details->{text_cm} ) if ( $user_details->{text_cm} ); $user_details->{useranme} = Encode::decode( 'utf8', $user_details->{useranme} ) if ( $user_details->{useranme} ); $user_details->{name_guest} = Encode::decode( 'utf8', $user_details->{name_guest} ) if ( $user_details->{name_guest} ); } my $json = to_json($user_details); $c->response->content_type("application/json"); $c->response->body($json);}
ИМХО, еще вариант: скорее всего банальный ддос...
обсуждали /ru/forum/482373
с темы сисек надо начинать :)
спасибо, работает!
зафтыкал, скобки лишниые и вот так вот надо было сделать "+i+"...
можно нагуглить разные варианты на jquery
http://www.google.com.ua/#hl=uk&source=hp&q=jquery+%D0%B2%D1%81%D0%BF%D0%BB%D1%8B%D0%B2%D0%B0%D1%8E%D1%89%D0%B5%D0%B5+%D0%BC%D0%B5%D0%BD%D1%8E&btnG=%D0%9F%D0%BE%D1%88%D1%83%D0%BA+Google&meta=&aq=f&aqi=&aql=&oq=jquery+%D0%B2%D1%81%D0%BF%D0%BB%D1%8B%D0%B2%D0%B0%D1%8E%D1%89%D0%B5%D0%B5+%D0%BC%D0%B5%D0%BD%D1%8E&gs_rfai=&fp=a1e4a221592c4a20
trend, там смотря что внутри div еще, если там какие-то таблицы, то проблематично...
вы jquery подключили?
ну но вот работает:
http://www.x0.org.ua/photo_album/34
http://www.x0.org.ua/photo/view/34/257
http://www.x0.org.ua/video/view/3/52
попробуйте другие варианты, те которые предлагали и в этом топике, вариантов более чем достаточно?
еще так:
jquery
<script type="text/javascript">$(document).ready(function(){$('.knob').hide()$('.spoiler').click(function(){$(this).next().toggle()})})</script>
knob - div
spoiler -div
/ru/forum/453611
/ru/forum/466542
/ru/forum/443210