0

我有两个DropDowns,在change一个下拉的事件中,我已经填写了第二个下拉。当我触发第一个下拉的更改事件时Arrow Keys,它不工作,而Mouse click工作正常。这是我的代码..

$('#cmbCategory').on('change', function () {
    //alert($(this).val());
    // the below function will get Sub Categories from DataBase.
    getSubCategories($('#cmbCategory :selected').val(), '');
}).keydown(function (e) {
    if (e.which == 37 || e.keyCode == 38 || e.keyCode == 39 || e.keyCode == 40) {
        $(this).trigger('change');
    }
});

此代码在使用Mouse时可以正常工作,但在Arrow Keys. 任何帮助..

4

1 回答 1

3

我认为您必须添加keyup事件,或者您也可以使用keypress事件

$("#cmbCategory").keyup(function(e) 
{
        if (e.keyCode == 40) 
        {  
            getSubCategories($('#cmbCategory :selected').val(), '');
        }
        if(e.keyCode==38)
        {
            getSubCategories($('#cmbCategory :selected').val(), '');
        }

});

注意:以上代码未经测试

于 2014-01-09T12:20:36.633 回答