2016-04-08 19 views
0

g:選択してデフォルトの選択値を入力します。しかし、デフォルト値がnullの場合、 'Please select one'と表示されます。しかし、私はそれを動作させるように見えることはできません。g内の条件:gspタグを選択

コードは以下の通りです:

これは、Addressオブジェクトである -

Address 
    Long id 
    String name 
    Sheriff sheriff 
    String phaseCode 

ListOfSheriffsドロップダウンに含まれるオプションは、保安官、オブジェクトの保安官-含むリスト

Sheriff 
    Long id 
    String name 
    //other property here 

のリストですdefaultSheriffは、アドレスのデフォルトセキュリティーです。

コードの下しかし、defaultSheriffがnullの天気を文句を言わないの表示「を選択してください。」私のGSP

<g:select optionKey = "id" 
      optionValue = "${{sheriff.name +' '+sheriff.id}}" 
      name="sheriff.name" 
      from="${ListOfSheriffs}" 
      value="${(defaultSheriff == null) ? 'Please select one' : defaultSheriff}" /> 

の一つであり、ページがのみListOfSheriffsから最初の保安官を表示します。

私はこの解決策をhere から得ました。そして私が何を捨てたか分からない。

また、docsで読んだことに基づいてnoSelectionを使用してみました。しかし、結果は、ページ上のドロップダウンリストのデフォルト選択値は常にあるさ「を選択してください。」defaultSheriffは何かが私が提供しているものと明らかになっていない場合は、お気軽に

<g:select optionKey = "id" 
      optionValue = "${{sheriff.name +' '+sheriff.id}}" 
      name="sheriff.name" 
      from="${ListOfSheriffs}" 
      value="${defaultSheriff}" 
      noSelection="[null:'Please select one']" /> 

nullではないにもかかわらず、それが追加されたことを指摘するために、私はそれを詳述することをうれしく思いますおかげ

答えて

0

は、私はあなたがこの1つは動作します。この

<g:select optionKey = "id" 
      optionValue = "${{it.name +' '+ it.id}}" 
      name="sheriff.name" 
      from="${ListOfSheriffs}" 
      value="${sheriff?.id ?: defaultSheriff?.id}" 
      noSelection="['':'Please select one']" /> 
+0

のようになめらか必要があると言うでしょう!ありがとう –