本文介绍了如何使用JQuery动态创建输入元素来实现keyup函数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法弄清楚为什么以下代码不起作用。

I can not figure out why the following code does not work.JSFIDDLE LINK

$(document).ready(function () {
    addInput();
});

var limit = 30;
function addInput() {
    var numberOfRows = $("#shipping tr").size();
    var id = numberOfRows;
    if (numberOfRows == limit) {
        alert("You have reached the limit of adding " + limit + " inputs");
    } else {
        $('#shipping').append('<tr id="rate' + id + '"></tr>');
        $('tr#rate' + id).append('<td></td>');
        $('tr#rate' + id).append('<td><input type="text" name="rate" /></td>');
    }
    $('input[name=rate]').on('keyup', 'input', function () {
        alert('YAY');
        return false;
    });
}

我正在尝试为我动态添加的输入分配一个keyup函数。

I am trying to assign a keyup function to the inputs that I add dynamically.

预期输出:YAY!在弹出框内

Expected output: YAY! inside a popup box

请帮助!

推荐答案

附加一个密钥事件处理程序到发货表,并且事件将从输入[name =rate] 冒出来到发货表:

Attach an keyup event handler to shipping table, and the event will bubble up from the input[name="rate"] to shipping table:

$('#shipping').on('keyup', 'input[name="rate"]', function () {
    alert('YAY');
    return false;
});

DEMO

这篇关于如何使用JQuery动态创建输入元素来实现keyup函数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-24 22:04