Titanium 设置状态为HTTPCLient的按钮的Backburnd

Titanium 设置状态为HTTPCLient的按钮的Backburnd,titanium,httpclient,Titanium,Httpclient,我有一个按钮,当我点击按钮时,我将发送一个HTTPClient请求。如果成功,我将更改按钮的背景图像并设置enabled=false。如果不成功,不要更改。我该怎么办? 我使用了一个变量,并以此为基础,但没有成功。 这是我的HTTP客户端代码 var added; var url ="http://192.168.1.14/add/"; button.addEventListenner('click',function(e){ add(url); if(added==1) {

我有一个按钮,当我点击按钮时,我将发送一个HTTPClient请求。如果成功,我将更改按钮的背景图像并设置enabled=false。如果不成功,不要更改。我该怎么办? 我使用了一个变量,并以此为基础,但没有成功。 这是我的HTTP客户端代码

var added;
var url ="http://192.168.1.14/add/";
button.addEventListenner('click',function(e){
   add(url);
   if(added==1)
   {
        //set background for button 
   }
   else
   {
      //don't set background
   }
});
function add(url)
{
var client = Ti.Network.createHTTPClient({
enableKeepAlive : true,
onload : function(e) {
  added=1;
  Ti.API.info('Load success');
  Ti.API.info('Status:'+this.status);
},
onerror : function(e) {
  added=0;
  alert(L('cant_connect'));
},
timeout : 10000 // in milliseconds
});

client.open("GET",url);
client.send();
}

在函数addurl中更改按钮背景

onload : function(e) {added=1;Ti.API.info('Loadsuccess');Ti.API.info('Status:'+this.status);//set background for button },
如果回调返回错误,按钮背景将保持不变。这是因为它的asyn呼叫。调用函数addurl后,它将向httpclient发送一个请求。此调用旁边的代码将被执行,当http调用返回时,按钮的回传将不会发生任何变化