2012-04-07 78 views
0

我有一個ZendX_Jquery_Form,我有一個麻煩設置選擇元素的placeHolder。setPlaceholder select元素

$month->setAttribs(
     array(
      'required' => TRUE, 
      'placeHolder' => 'Month' 
     )); 

我希望它太像這樣: enter image description here

但所有我得到的是THI:enter image description here

在我的螢火蟲輸出HTML看起來像這樣

<select id="months_at_residence-lengthMonth" placeholder="Month" required="1" name="months_at_residence[lengthMonth]"> 

我絕對不知道爲什麼這不起作用。

我需要幫助來設置這樣,當我點擊佔位符文本隱藏。 只要把這個不使用zend直接工作我知道這可以使用js/css來完成。如果我用CSS和JavaScript做到這一點,我如何才能實現所有選擇元素?

希望是足夠清晰的

回答

3

Placeholdersselect表單元素的工作,你應該做的,而不是爲使用默認值,如下禁用它:

$month->addMultiOption('--', 'Month'); 
$month->setOptions(array('disable' => array('--'))); 

這將輸出:

<select id="country" name="country" class="valid"> 
    <option disabled="disabled" label="--" value="--">Month</option> 
    <option label="January" value="Jan">January</option> 
    <option label="February" value="Feb">February</option> 
    // ... 
</select> 

注意fr OM W3Schools

佔位符屬性適用於以下輸入類型: 文本,搜索,網址,電話,電子郵件和密碼。

+2

這是正確的,佔位符不與選擇的單元工作。 – undefined 2012-04-07 06:06:10

+0

我從來沒有意識到,當你使用zend dojo form的時候它工作得如何?我一直在使用dojo,它一直在工作 – 2012-04-07 07:41:51

+1

@Rohan:從[Dojo Toolkit文檔](http://dojotoolkit.org/documentation/tutorials/1.6/selections_using_stores/):'我們爲FilteringSelect和ComboBox添加placeHolder文本 - 選擇不支持this.' – Liyali 2012-04-07 09:55:04

1

爲什麼不把第一個選項在選擇'佔位符'文本?

<select id="choice"> 
    <option value="0" selected="selected">Choose...</option> 
    ... 
</select> 

https://stackoverflow.com/a/5805194/435460

+0

目前我/已經在做了那樣的,只是想弄清楚爲什麼setPlaceHolder不工作 – 2012-04-07 05:51:10