質問

知っていることを依存関係分野となる可能性がありますのノード

<depends />

とはいえ、かつグループを作成する依存関係がないのですが探していただくためざし、実際のForm.php コードで記載

$dependent->fieldset

何をやってもうまくいかないきが続いていることができます。

編集:さらなる調査でいるようでループを通じての分野にお読み依存関係のためにMage_Adminhtml_Block_System_Config_form::initFields()

foreach ($group->fields as $elements) {

も良いことがあるかも知をどのように実現するこ

役に立ちましたか?

解決

JavaScriptをコメント領域に入れることができます。それはこのようなものになることができます:

<comment><![CDATA[
    <script type="text/javascript">
        document.observe("dom:loaded",function(){
            if($('sections_groups_value').value != some_value){
                 Element.up($('sections_groups')).hide();
            }
        });
        Event.observe('sections_groups_value', 'change', function(){
            if(this.value != some_value){
                Element.up($('sections_groups')).hide();
            }else if(this.value == some_value){
                Element.up($('sections_groups')).show();
            }
        })
    </script>]]>
</comment>
.

それに応じて「sections_groups_value」、「many_value」、および「sections_groups」を置き換えます。

他のヒント

最初に私を必要とする理由をご記の文言.

かつグループを作成する依存性

しました。を実現しようとしてい グループ依存性電界依存性 ?

のポイントをより明確にし、 groupsfields とは異なるシステムの設定をします。集団と集めている。

集関連 fields 構成 group.Collectionの関連団体の構成 section 回収のような部分を構成するシステム全体の設定ページです。

だい場依存性を、この リンクを進めていくうえで良い出発点.

まる必要がリアルタイムで見る Mage_Customer モジュールです。あり内側 app/code/core/Mage/Customer/etc/system.xml, で定義、グループ create_account.できることを一つ以上の分野でそのグループにより異なりフィールド名 auto_group_assign.さらに同条約を宣言するのカスタムの分野で、簡単に実現できかねます。

免責事項:-以下のとがありますので、私が観測で 示すものではありません。ていただく場合が間違っていてください正しい:-)

から 編集, いでくださいますようお願いいのは正しい方向を向いている。かったと思っており、小説明します。

の方法ですが、参照され Mage_Adminhtml_Block_System_Config_Form::initFields(). Mage_Adminhtml_Block_System_Config_Form クラスを用いて構成するシステム構成です。 initFields() する方法で生成に使用される分野、特定のグループに属する

だとするところは、三つのタイルです。以下の私はその構造

foreach ($group->fields as $elements) {

    //doing sorting on fields in a specific group and 
    //store sorted array of fields in $elements.

    foreach ($elements as $element) {

        //more more codes

        if ($element->depends) {
            foreach ($element->depends->children() as $dependent) {
            }
        }
    }
}

ここで最初に foreach ループの収集分野でこの内の特定のグループ(fieldset).本コレクションから生成されるxmlの設定とは system.xml ファイルです。な分野のコレクション $group->fields を持つ紙配列になります。そのため initField() 方法と分別し、分別の分野としての配列 $elements.その foreach ループ再プを通してソートされた配列。

多くのものがこのループを実行します。せるわけにはいきませんの説明のようになります。しかし当社は、次 foreach ループです。このループを実行し, initFields() 法チェックのための依存関係の分野 if ($element->depends).で依存関係を指定でを繰り返して調べての通し方によります。($element->depends->children() 実際に生成さの配列によります。この分野における電流分野であります。

お待ち---で繰り返し処理の集合によって分野にお!!!!とが していきたいで複数の電界依存性は、特定の分野.この時の私を指定する必要があると私はを参照する Magento 1.9.1.この機能が利用できない古いバージョンだとは思います。からざ1.7、複数の分野への依存ができます。

ことになるのです。この分野に依存する処理ざ.を取得しまの詳細を指定します。私は明らかでない。

Magento 2.1.xの場合は、依存構成グループを切り替えるために次のjQueryを使用できます。

<comment><![CDATA[
<script type="text/javascript">//<![CDATA[
    require(['jquery'], function(){
        if (jQuery('#field_id').val() == 'value_to_compare') {
            toggleDependantGroups(true);
        }

        jQuery('#field_id').change(function() {
            if (jQuery(this).val() == 'value_to_compare') {
                toggleDependantGroups(true);
            } else {
                toggleDependantGroups(false);
            }
        });

        function toggleDependantGroups(hide=true)
        {
            if (hide) {
                jQuery('#section-id').closest('div.section-config').hide();
                jQuery('#section-id').closest('div.section-config').hide();
                jQuery('#last-visible-section-id').closest('div.section-config').css('border-bottom-width', '0px');
            } else {
            jQuery('#section-id').closest('div.section-config').show();
            jQuery('#section-id').closest('div.section-config').show();
            jQuery('#last-visible-section-id').closest('div.section-config').css('border-bottom-width', '1px');
            }
        }
    });
</script>]]>
.

必要に応じてIDを置換します。

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top