0

以下代码工作正常,

//从php发送

echo("({'title':'$myTitle', 'message':'$myMessage'})");

//在控制sencha touch app中的ajax响应位

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'})";

//在控制sencha touch app中的ajax响应位

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, '');

所以它摆脱了相同的 exept - and , and 。

然后我可以通过这种方式从数据中获取我想要的位(但不是首选选项)。

4

1 回答 1

0

L.

如果您在此处查看 Ext.Array 的 api 文档http://docs-origin.sencha.com/touch/2.4/2.4.1-apidocs/#!/api/Ext.Array

Ext.Array.each 的回调接受一些参数,第一个参数用于您所追求的数据。因此,我认为您想要以下内容。

Ext.Array.each(data.myData, function(data) {
 // Here data contains the data structure sent from your PHP code.
 console.log(data.title);
 console.log(data.message);
});

希望有帮助!

于 2015-01-27T12:33:43.833 回答