Следующий код работает нормально,
//отправлено с php
echo("({'title':'$myTitle', 'message':'$myMessage'})");
// в бите ответа ajax в приложении Control of sencha touch
success: function(xhr,params)
{
var data = Ext.JSON.decode(xhr.responseText.trim());
var aTitle=data.title; //get the value of message, $myMessage
var aMessage=data.message;
console.log('Title:',aTitle,' - Message:',aMessage);
},
Это также, но я не могу получить отдельные данные, однако,
//из php, массив данных как и раньше, заголовок и сообщение, только их намного больше
$data=json_encode($myArray);
echo "({'myData':'$data'})";
// в бите ответа ajax в приложении Control of sencha touch
success: function(xhr,params)
{
var data = Ext.JSON.decode(xhr.responseText.trim());
var myArray=[];
Ext.Array.each(data.myData, function()
{
myArray[count]= data.myData;
//this will spit out all the data from array.
console.log('myArray contains:',myArray[count]);
//but i wanted to select individual bit e.g.(pseudo code ish)
myArray[0]=data.myData.title;
or
myArray[3]=data.myData.message; // that sort of thing
count=count+1;
});
},
В случае неудачи может кто-нибудь сказать мне, как это изменить:
//удалить не буквенно-цифровые символы myOutputString = myDataString.replace(/\W/g, '');
так что он избавляется от того же, за исключением - и , и .
тогда я могу просто получить биты, которые я хочу, из данных таким образом (но не предпочтительный вариант).