1

我有一个按钮,当我单击按钮时,我将操作发送一个 HTTPClient 请求。如果成功,我将更改按钮的背景图像并设置启用 = 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();
}
4

1 回答 1

0

在函数 add(url) 中更改按钮背景。

onload : function(e) {added=1;Ti.API.info('Loadsuccess');Ti.API.info('Status:'+this.status);//set background for button },

如果您的回调返回错误,按钮背景将保持不变。这是因为它的异步调用。一旦你调用函数 add(url) ,它就会向 httpclient 发送一个请求。此调用旁边的代码将被执行,当 http 调用返回时,按钮的背景不会发生任何事情。

于 2012-12-03T07:03:15.690 回答