jquery on=>keyup无法绑定未来js添加的元素
$("[name=red_count]").on("keyup", countKeyUpBind);即使使用on的,也无法绑定未来元素,
所以直接在动态添加的时候,再进行绑定keyup事件
至于click是允许的
同时,对于jquery中before,after添加的标签,不管是click还是keyup都是没有绑定未来元素的功能
//红包个数统计 $("[name=red_count]").on("keyup", countKeyUpBind); //红包金额统计,keyup不能动态使用的 $("[name=red_money]").on("keyup", moneyKeyUpBind); function countKeyUpBind(){ var count = 0; $("#red_mode_set [name=red_count]").each(function () { var v = parseInt($(this).val()); if(!isNaN(v)){ count += v; } }) $("#red_quantity").html(count + "个"); } function moneyKeyUpBind(){ var amount = 0; $("#red_mode_set [name=red_money]").each(function () { var v = parseFloat($(this).val()); if (!isNaN(v)) { amount += v; } }) $("#red_amount").html(amount + "元"); } //添加红包模式 $(".drag_ad").click(function () { $("#red_mode_set").append($("#red_mode_template").html()); $("#red_mode_set [name=red_money]:last").bind("keyup", moneyKeyUpBind); $("#red_mode_set [name=red_count]:last").bind("keyup", countKeyUpBind); })
//金额统计,keyup不能动态使用的 $("[name=red_money]").on("keyup", moneyKeyUpBind); function moneyKeyUpBind(){ var amount = 0; $("#red_mode_set [name=red_money]").each(function () { var v = parseFloat($(this).val()); if (!isNaN(v)) { amount += v; } }) $("#red_amount").html(amount + "元"); } //添加红包模式 $(".drag_ad").click(function () { $("#red_mode_set").append($("#red_mode_template").html()); $("#red_mode_set [name=red_money]:last").bind("keyup", moneyKeyUpBind); })
fighting