html元素加载后调用事件,javascript – Jquery事件不触发DOM元素页面加载后创建

参见英文答案 >

jQuery doesn’t work after content is loaded via AJAX                                    7个

我有一个页面,当html5数字字段被更改时触发calculate()函数我已经绑定了几乎我能想到的每个事件,它适用于最初加载的DOM元素.

但是,如果我在加载dom后添加元素,则不会触发更改功能.

我添加了一个运行calculate()函数的按钮,当单击它时,它将运行新创建的元素以及原始元素.

所以我知道代码可以工作,但事件不是为新创建的dom元素触发.

Jquery触发器

$('.score').change(function() {

calculate();

});

$('.score').bind('keyup mouseup',function() {

calculate();

});

$('.score').mousewheel(function() {

calculate();

});

$('.score').click(function() {

calculate();

});

$('.score').keypress(function() {

calculate();

});

计算功能

function calculate() {

$("tbody tr").each(function() {

row_total = 0;

$(".score",this).each(function() {

row_total += Number($(this).val());

});

$(".total",this).val(row_total);

});

var arr = [];

var row = 0;

$("tbody tr").each(function() {

$(".total",this).each(function() {

arr[row] = $(this).val();

row += 1;

});

});

var sorted = arr.slice().sort(function(a,b) {

return b - a

})

var ranks = arr.slice().map(function(v) {

return sorted.indexOf(v) + 1

});

row = 0;

$("tbody tr").each(function() {

$(".place",this).each(function() {

$(this).val(ranks[row]);

row += 1;

});

});

$("tbody tr").each(function() {

$(".place",this).each(function() {

var p = $(this).val();

switch (p) {

case '1':

$(this).css('background-color','gold');

break;

case '2':

$(this).css('background-color','silver');

break;

case '3':

$(this).css('background-color','#8c7853');

break;

case '4':

$(this).css('background-color','white');

break;

default:

$(this).css('background-color','white');

}

});

});

}

genRow功能

function genRow(i)

{

var x = "";

for (var j = 0; j < i; j++) {

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

x += '';

x += '

';

x += '

';

}

return x;

}

Name

Judge 1

Judge 2

Judge 3

Judge 4

Judge 5

Place

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值