jquery ajax success

Ev0luti0N

Registered
Икам да попитам дали може чрез success: function(data) { Повече от една фукций. Проимер success: function(data, data2, data3) {
 
Това са аргументи на функцията, а не функции :)
Docs.jQuery.com каза:
success(data, textStatus, XMLHttpRequest)
A function to be called if the request succeeds. The function gets passed three arguments: The data returned from the server, formatted according to the 'dataType' parameter; a string describing the status; and the XMLHttpRequest object (available as of jQuery 1.4). This is an Ajax Event.
 
F1r3Fl3x каза:
Това са аргументи на функцията, а не функции :)
Docs.jQuery.com каза:
success(data, textStatus, XMLHttpRequest)
A function to be called if the request succeeds. The function gets passed three arguments: The data returned from the server, formatted according to the 'dataType' parameter; a string describing the status; and the XMLHttpRequest object (available as of jQuery 1.4). This is an Ajax Event.

Да това ми е ясно гледах го, обаче там е проблема, че не мога го схвана много много :/
Защото то приема стойноста която враща PHP файла намираща се в echo/print, но аз ако искам да върна 2-3 стойности :shock:
 
Ами аз лично в php кода бих направил така:

<?php

$data['index1'] = "teksta, koito iska6 da pokaje6 purvo";
$data['index2'] = "teksta, koito iska6 da pokaje6 vtori";
$data['index3'] = "telsta, koito iska6 da pokaje6 treti";

echo json_encode($data);
?>

после някъде в html кода си зареждаш освен jquery и този скрипт, който свалиш от тук http://code.google.com/p/jquery-json/downloads/list.

След като имаш този скрипт свален и зареден в документа ти, success функцията ти можеш да я направиш така:

success: function(data) {
var json = $.evalJSON(data);
alert(json.index1);
alert(json.index2);
alert(json.index3);
}

ако не искаш да сваляш допълнителна библиотека можеш:

var json = $.evalJSON(data);

да го замениш с :

var json = eval('(' + data + ')');
но аз предпочитам варианта, който ти дадох първо :)
 

Back
Горе