2012-12-12 105 views
0

我有一個關閉下拉框的腳本,直到用戶單擊向下箭頭,顯示選項。我希望它從一開始就顯示所有選項,因此他們不必選擇向下箭頭。有誰知道我需要改變以實現這個目標嗎?我試着在.toggleClass上打開'open',但這似乎沒有改變任何東西。下拉菜單在默認情況下打開php

<script type="text/javascript"> 
// <![CDATA[ 
// toggles the refine search field values 
jQuery(document).ready(function($) { 
    $('div.handle').click(function() { 
     $(this).next('div.element').animate({ 
      height: ['toggle', 'swing'], 
      opacity: 'toggle' }, 200 
     ); 

     $(this).toggleClass('close', 'open'); 
     return false; 
    }); 
    <?php foreach ($_GET as $field => $val) : ?> 
    $('.<?php echo esc_js($field); ?> div.handle').toggleClass('close', 'open'); 
    $('.<?php echo esc_js($field); ?> div.element').show(); 
    <?php endforeach; ?> 

}); 
// ]]> 
</script> 
+1

我可能是錯的,但這可能是在您的JavaScript不是PHP,也可能需要說哪個菜單。 –

+0

好的謝謝。有沒有辦法讓我們默認顯示所有的選項,而不是用戶點擊一個按鈕來顯示選項? 整個代碼在這裏:http://pastebin.com/sya8auVG – creatrix

+0

這個鏈接到一個頁面生成一個有序的複選框列表 - 這不是一個下拉框。 – deed02392

回答

0

PHP不會這樣做,你可以玩與形式與JavaScript的交互。

在javascript上使用focus()函數,下拉應該自動聚焦。

<!-- Your form --> 
<form> 
<select id="mySelect"> 
    <option>...</option> 
</select> 
</form> 

<!-- Your Javascript --> 
<script type="text/javascript"> 
document.getElementById('mySelect').focus(); 
</script> 
+0

謝謝,你能告訴我在哪裏我把這個在我的JavaScript? (Iv'e修改了我的原始問題) – creatrix

+0

@creatix簡單地在Javascript的最底部寫下它(在之前)。該行應該在頁面加載完成時自動運行。 – ashiina

0

要顯示所有項目而不使用下拉框,您可以使用HTML元素<select size="3">屬性。

你能告訴我們所有的代碼用於在頁面上顯示你的選擇框,所以我們可能會建議如何做到這一點?我猜你正在使用某種框架。

<select size="3"> 
    <option>A</option> 
    <option>B</option> 
    <option>C</option> 
</select> 

用戶將看到所有選項都出現在垂直框中。他們可以使用Ctrl來選擇多個選項,在這種情況下,您需要將[]附加到select元素的name屬性。

0

使用multiple屬性,這樣的選擇框:

<select name="xxx" multiple> 
    <option value="1">value 1</option> 
    <option value="2">value 2</option> 
    <option value="3">value 3</option> 
</select> 

這裏是一個Demo來看看它是如何出現。