Flex中如何利用HTTPService的send()将参数传递给HTTPService的例子

By Minidxer | October 31, 2008

接下来的例子演示了Flex中如何利用HTTPService的send(),将参数传递给HTTPService。

让我们先来看一下Demo可以右键View Source或点击这里察看源代码):


下面是完整代码(或点击这里察看):

Download: main.mxml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="middle"
  5.         backgroundColor="white">
  6.  
  7.     <mx:Script>
  8.         <![CDATA[
  9.             import mx.controls.Alert;
  10.             import mx.events.ValidationResultEvent;
  11.             import mx.utils.StringUtil;
  12.  
  13.             private function submit_click(evt:MouseEvent):void {
  14.                 var result:ValidationResultEvent = stringValidator.validate();
  15.                 var params:Object = {};
  16.  
  17.                 lbl.text = "";
  18.  
  19.                 switch (result.type) {
  20.                     case ValidationResultEvent.INVALID:
  21.                         Alert.show(result.message, result.type);
  22.                         break;
  23.                     case ValidationResultEvent.VALID:
  24.                         params["name"] = StringUtil.trim(firstName.text);
  25.                         httpServ.send(params);
  26.                         break;
  27.                 }
  28.             }
  29.         ]]>
  30.     </mx:Script>
  31.  
  32.     <mx:StringValidator id="stringValidator"
  33.             source="{firstName}"
  34.             property="text"
  35.             minLength="2"
  36.             maxLength="{firstName.maxChars}" />
  37.  
  38.     <mx:HTTPService id="httpServ">
  39.         <mx:resultFormat>flashvars</mx:resultFormat>
  40.         <mx:url>http://www.flash-mx.com/mm/greeting.cfm</mx:url>
  41.         <mx:result>lbl.text = httpServ.lastResult.welcomeMessage;</mx:result>
  42.         <mx:fault>Alert.show(event.toString(), event.type);</mx:fault>
  43.     </mx:HTTPService>
  44.  
  45.     <mx:ApplicationControlBar dock="true">
  46.         <mx:Form>
  47.             <mx:FormItem label="Name:" required="true"
  48.                     direction="horizontal">
  49.                 <mx:TextInput id="firstName"
  50.                     maxChars="20" />
  51.                 <mx:Button label="Submit"
  52.                         click="submit_click(event);" />
  53.             </mx:FormItem>
  54.         </mx:Form>
  55.     </mx:ApplicationControlBar>
  56.  
  57.     <mx:Label id="lbl" fontSize="32" />
  58.  
  59. </mx:Application>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子

Topics: HTTPService | 1 Comment » | Tags: , , , , ,

Search Posts