0

Dashcode で、たとえば 'FirstName' と 'Last Name' という 2 つのフィールドを持つ dataSource がある場合、2 つのフィールドをリスト ビューの 1 つのテキスト フィールドに連結するにはどうすればよいですか?

値トランスフォーマーを使用する必要があると確信しているので、「FirstName」フィールドをテキストフィールドに割り当て、値トランスフォーマーを追加するとします...その後、「LastName」値を「値」に追加するにはどうすればよいですか' トランスフォーマーの変数。

私はそれがdashcode.getDataSourceとvalueForKeyPathに関係していると確信しており、私は解決策に近づいていると思いますが、それはすべて少し不格好に見えるので、どんな助けも大歓迎です.

4

2 に答える 2

4

正解 - Value Transformer を使用する必要があります。

Transformer では、次のようにコーディングします。

itemDescription = Class.create(DC.ValueTransformer,{
    transformedValue: function(value){

    var itemDataSource = dashcode.getDataSource('itemsList'); // The Data Source Name here
    var lastName = itemDataSource.selection().valueForKey('lastName'); // Presumes you have a field called lastName
    return value + " " + lastName;
    }
});

これが役に立てば幸いです-私はこれで1日戦いました!!!

于 2011-05-06T17:31:31.323 に答える
0

将来のグーグルのために、これについてのドキュメントはどこにも絶対にないので:

同じデータソースからの2つのフィールドを連結するための詳細ビューの場合:

XML

<?xml version="1.0" encoding="utf-8"?>
<immobilier>    
  <bien>
    <ID>1453</ID> 
    <Titre>Maison / Villa F4</Titre>
    <Ville>Sainte Clotilde</Ville>
    <Quartier>BRETAGNE</Quartier>
  </bien>
</immobilier>

フィールドVilleとQuartierを組み合わせるには、次のような値トランスフォーマーを作成します。

mapAdresse = Class.create(DC.ValueTransformer,{
    transformedValue: function(value){

        if (value.trim() != "") {
            //Replace immoListe with your source name
            var itemDataSource = dashcode.getDataSource('immoListe');

            //THIS IS THE MOST IMPORTANT : HOW TO FIND THE CURRENTLY SELECTED ITEM INDEX 
            var selectedIndex = document.getElementById('list').selectedIndex; 

            //Use the selectedIndex to find the record in the datasource
            var quartier = itemDataSource.selection().valueForKey("bien")[selectedIndex].valueForKey("Quartier");

            //Concatenate to your liking
            if (quartier.trim() != "") value = value + ", "+ quartier;
        }

        return value;
    }
});

なぜこれはどこにも文書化されていないのですか?私を殴る !!

于 2012-07-11T15:07:39.093 に答える