2012-05-11 3 views
-1

ComboBoxの値をChangeイベントハンドラに表示したいとします。ActionScriptでComboBoxの値を取得する方法

protected function cmbArea_changeHandler(event:IndexChangeEvent):void{ 

     // TODO Auto-generated method stub 
     Alert.show(event.target.selectedItem.value); 
    } 
:私は、イベントハンドラ

cmbArea.labelField = qry.outFields[0]; 

を実行したときにそれが何であるかわからないようにlabelFieldプロパティは、私は私のようなのSelectedItemの値へのアクセスを持つことができることを期待していた、動的に割り当てられ、

しかし、うまくいきませんでした。 ご協力いただければ幸いです。

+0

FlexとSparkを使用していますか? –

+0

net.uk.sweet、はい。 ComboBoxは次のように定義されています:\t \t \t '' – Fred

+0

誰でもこの質問に対して否定的な投票をした理由を説明できます。私は間違ったことをしましたか? – Fred

答えて

0

私は次の行をテストし、それを思わ作品:

Alert.show(event.target.selectedItem[event.target.labelField]); 
+0

フレッド、あなたはあなた自身の答えを受け入れることができますか?あなたが得るポイントは、それを覆う以上のものです:) –

+0

こんにちはイアン、あなたのヒントありがとう。私は誰かがそれを見つけてそれを受け入れるかもしれないと思った。 – Fred

1

データプロバイダのコードやエラーメッセージが表示されないと、これをデバッグすることは困難です。ただし、labelFieldが動的に割り当てられることは重要ではありません。データプロバイダの要素に「値」という名前のプロパティがある場合、あなたが持つものは機能します。データプロバイダで唯一のプロパティは、labelFieldプロパティとして割り当てるものである場合は、次を使用して変更ハンドラでそれにアクセスできるようにする必要があります

Alert.show(ComboBox(event.target).selectedItem); 
+0

データプロバイダは、GIS Webサービスからデータを受け取ったArrayCollectionです。それは複数のプロパティを持ち、私がイベントプロシージャにいるとき、私はどのプロパティがlabelFieldとして割り当てられているのかわかりません。コードが十分明確でない場合は申し訳ありません。私はWebサービスからデータを取得するためのサンプルコードを使用していますが、私はそれをよく理解していません。とにかく、ありがとうございました。それは正しい答えに私を導いた。 – Fred

0
<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
       xmlns:s="library://ns.adobe.com/flex/spark" 
       xmlns:mx="library://ns.adobe.com/flex/mx"> 

    <fx:Script> 
     <![CDATA[ 
      import mx.controls.Alert; 

      import spark.events.IndexChangeEvent; 

      protected function comboBox_changeHandler(event:IndexChangeEvent):void 
      { 
       Alert.show(comboBox.selectedItem); 
      } 
     ]]> 
    </fx:Script> 

    <s:ComboBox id="comboBox" 
       change="comboBox_changeHandler(event)"> 
     <s:dataProvider> 
      <s:ArrayList> 
       <fx:String>Item 1</fx:String> 
       <fx:String>Item 2</fx:String> 
       <fx:String>Item 3</fx:String> 
      </s:ArrayList> 
     </s:dataProvider> 
    </s:ComboBox> 

</s:Application> 
関連する問題