动态创建的选择控件不会在按键上触发事件

时间:2014-12-17 22:00:17

标签: jquery

我遇到一些问题,一些动态创建的选择控件[下面]当用户使用鼠标更改控件时它们工作,但不能用于关键事件[选项卡到控件并使用箭头更改值]我该怎么办?更改jQuery,以便键盘事件可用于操作选择控件?

这是使用鼠标更改控件时触发的jquery,但不是在使用键盘时触发:

$('#sub-budgets-container').on('change','.budget_type_id',function() {

      console.log('select changed')

      var option = $(this).val();
      var container = $(this).parent().parent().parent();

      $(container).find(".hidden_budget_type_id").val(option);   

    });

这是克隆select控件容器的jquery:

$('#add-sub-budget').click(function(){

        console.log('button clicked');
        var newBudgetGroup = $('#budget-amounts').clone();
        newBudgetGroup.find('.budget_type_id').removeAttr('disabled');
        newBudgetGroup.find('.budget_type_id').attr('id', 'budget_type_id_control[]');
        newBudgetGroup.find('.budget_type_id').attr('name', 'budget_type_id_control[]');
        newBudgetGroup.find('#budget-id-select').removeClass('hidden');
        newBudgetGroup.find('.budget_amount').val('');
        newBudgetGroup.attr('id', 'sub-budget-amounts');
        //newBudgetGroup.find('.hidden_budget_type_id').remove();

newBudgetGroup.blur();             newBudgetGroup.insertBefore( '#子预算');

    });

更新

想通了:

    $('#add-sub-budget').click(function(){

            console.log('button clicked');
            var newBudgetGroup = $('#budget-amounts').clone();
            newBudgetGroup.find('.budget_type_id').removeAttr('disabled');
            newBudgetGroup.find('.budget_type_id').attr('id', 'budget_type_id_control[]');
            newBudgetGroup.find('.budget_type_id').attr('name', 'budget_type_id_control[]');
            newBudgetGroup.find('#budget-id-select').removeClass('hidden');
            newBudgetGroup.find('.budget_amount').val('');
            newBudgetGroup.attr('id', 'sub-budget-amounts');
            //newBudgetGroup.find('.hidden_budget_type_id').remove();
newBudgetGroup.blur();
            newBudgetGroup.insertBefore('#sub-budgets');

        });

0 个答案:

没有答案