2016-10-04 10 views
0

私は簡単な質問があります。ジェンキンではGUIの設定ファイルを作成するときに、ラジオボタンを展開してより多くの要素を表示させることができます。ドロップダウンリストでもこれを行うことができますか?もしそうなら、誰かが例を持っていますか?私はラジオボタンでそれを行う方法を知っていますが、私はラジオボタンを望んでいません、私は選択肢に依存するコンテンツが必要です。Jelly Config Expand Elements

編集:

<f:entry title="${%Authentication}" field="authMode"> 
     <f:select /> 
    </f:entry> 

とJavaファイルに:現在、私は以下の持っている。これは、3つの要素のドロップダウンリストが作成されます

public ListBoxModel doFillAuthModeItems() { 
     ListBoxModel items = new ListBoxModel(); 
     items.add("None"); 
     items.add("Form Based Authentication"); 
     items.add("Script Based Authentication"); 
     return items; 
     } 

、私はちょうど基づいて異なるコンテンツを表示する必要があります例えば、選択肢の上に。誰も新しいコンテンツを持たないでしょう、Form Basedはユーザー名とパスワードのテキストフィールドを表示します。

答えて

1

あなたが研究する必要があるものは、ヘテロリストゼリータグです。良いページが自分のコードが

かかわら閉じているcloud beesからそこにあり、私はselenium-axis-pluginのために一緒にオープンソースのものを置くが、これはグルーヴィーであるとGroovyの形はどのよう

namespace(lib.FormTagLib).with { 
    entry(title: _("Name"), field:"name") { 
     textbox(default:"label") 
    } 
    block{ 
     entry(field:"seleniumCapabilities") { 
      hetero_list(name: "seleniumCapabilities", 
         hasHeader: true, 
         descriptors:descriptor.axisItemTypes(), 
         items:  instance? 
          instance.getSeleniumCapabilities(): 
          descriptor.loadDefaultItems()) 
     } 
    } 
} 

source

を使用して使用可能なすべてのディスクリプタを返すメソッドがトップレベルのディスクリプタに存在することがあります。

List<ItemDescriptor> axisItemTypes() { 
    def ait = Jenkins.instance.<Item,ItemDescriptor>getDescriptorList(Item) 

    def ret = [] 

    for (int i = 0; i < ait.size(); i++) { 
     /*code removed*/ 
     ret.add(ait.get(i)) 
    } 
    ret 
} 

source

ネストされた項目のすべては、自分自身の記述子を持っている必要があり、また、私は本当に感謝し@DataBoundConstructor

+0

!私はそれを調べます。私はグルーヴィーでもっと経験がありますが、私が引き継ぐプロジェクトはゼリーであり、ゼリーでこれを達成する方法をよく知っておらず、手元でチュートリアルを見つけることができませんでした。しかし、あなたは私に素晴らしい場所を与えてくれました。ありがとう – codeCompiler77