从其他事件中选择并打开SELECT元素

时间:2012-03-06 21:40:34

标签: javascript jquery html

  

可能重复:
  Can I open a dropdownlist using jQuery

想要点击textarea打开下拉列表 - 是否可能?

我目前正在尝试使用jquery-mobile,&想要在iPhone / Android设备中打开SELECT-BOX。

这是我的代码 -

JS:

function showScoopCategory()
{
    console.log('showScoopCategory');
    $('#scoopCategory').click();  // Not opening the dropdown
}

HTML:

<select id="scoopCategory" name="grievence">
    <option value="1">Option One</option>
    <option value="2">Option Two</option>
    <option value="3">Option Three</option>
</select>
...
<textarea id="scoopCategoryText" placeholder="Select & Open Dropdown" onClick="showScoopCategory();"></textarea>

2 个答案:

答案 0 :(得分:2)

我认为你不能像普通点击那样打开它。但是,您可以增加它的大小。

$('#scoopCategoryText').on('focus', function() {
    var $sCategory = $('#scoopCategory'),    
        numCategories = $sCategory.find('option').length;

    console.log('showScoopCategory');
    $sCategory.attr('size', numCategories);          
}).on('blur', function() {
    $('#scoopCategory').attr('size', 1);
});

您还可以使用HTML和CSS制作模拟下拉列表,但是正确使用它并不容易。

答案 1 :(得分:1)

将focus()设置为SELECT元素,正在iPhone中工作。

但首先,它打开textarea的键盘,然后将其删除&amp;显示“选择”框。

所以,我打算删除textarea,并在那里设计像textarea这样的div。因此,onClick它将无法打开键盘和它可以直接打开选择框。

function showScoopCategory()
{
    console.log('showScoopCategory');
    $('#scoopCategory').focus();   // opening keypad, then removes it & opens Select box
}