Как вернуть переменную javascript в Ajax?

Кто-нибудь знает, как я могу вернуть переменную javascript в ajax вместо строкового значения, а я использую ajax для вызова php. Подробнее см. Ниже:

Ajax:

//Ajax Param var paramList = "Action=make_process"; ajaxRequest = $.ajax({ url: "admin.php", type: 'POST', data: paramList, error: function(){ //error message here }, success: function(data){ //read return javascript variable here; } }); 

PHP:

 public function validationChk() { $error_msg['error_msg'][] = array("msg"=>"hello"); $error_msg['error_msg'][] = array("msg"=>"hi"); echo "var ErrorMapping = " . json_encode($error_msg). ";\n\n"; exit; } 

Solutions Collecting From Web of "Как вернуть переменную javascript в Ajax?"

Вам интересно, как вы можете вернуться из ответа AJAX?

Затем ознакомьтесь с этим ответом на вопросы jQuery.

То, что вы пытаетесь сделать, – это не такая уж большая идея. То, что вы, вероятно, хотите, – это декодировать ответ JSON обратно в объект из вашего обратного вызова успеха и затем вернуть его.

Декодирование строки JSON включает в себя передачу через eval и надежду, что у вас нет плохих / вредоносных данных. Безопасный способ сделать это – разобрать JSON в Javascript. Если вам нужно идти по этому маршруту самостоятельно, то, по крайней мере, попытайтесь использовать что-то уже написанное. Искать в Google Code для "json-sans-eval".

Лучшим вариантом будет использование встроенных возможностей jQuery:

 jQuery.getJSON( url, [data], [callback] ) 

Он делает все тяжелое для вас. Потратьте некоторое время на чтение документов jQuery. Там много полезного.