2015-03-03 4 views
0

После поиска в течение нескольких часов ... Я нашел ответ на мой вопрос от этого вопроса: How to populate a select list using a structure inside select HTML helper in ColdBox?Как установить selectedValue для «пустого» значения с помощью html.select в Coldbox?

Этот пример является совершенным, так как я не смог найти что-нибудь на ColdBox Док. Я использовал «простую форму» для моих опций ... отображение результатов правильно. Тем не менее, selectedValue, похоже, не работает, когда значение равно "". Я также попытался заполнить параметры из массива. У меня была одна и та же проблема для обоих методов, когда она набирает параметр selectedValue.

Когда значение «", первое значение в параметрах всегда выбирается. Как это исправить или как изменить параметры, чтобы отображать «Выбрать ...», когда выбран выбранный валид?

#html.select(
       name="Approved",      
       options="Yes,No,Pending", 
       column="value", 
       selectedValue="", 
       label="", 
       required="required", 
       title="Approved" 
      )# 

ответ

0

Вам нужно создать массив объектов, содержащих имя и значение пару для пустого варианта, наряду с остальными вариантами:

<cfset foo = [ 
       {"name"= "Select", "value"= ""} 
       , {"name"= "Yes", "value"= "Yes"} 
       , {"name"= "No", "value"= "No"} 
       , {"name"= "Pending", "value"= "Pending"} 
      ] /> 

И передать массив в функцию select хелперов с использованием html.options() способ.

#html.select(
      name="Approved",      
      options=html.options(foo), 
      selectedValue="", 
      label="", 
      required="required", 
      title="Approved" 
     )# 

Примечание: В этом случае вам не нужно предоставлять column атрибут. Это может решить вашу проблему.