问题

JQuery、js动态添加 html元素 到页面,如果直接写绑定事件会失效。

解决方式

将事件委托到body(当然可以是其它父元素),用事件冒泡法 到父元素上面再进行事件处理。

 

核心代码:
[code lang=”js”]
$(‘body’).on(‘change’,’.a13′,function(){

}
[/code]


参考例子

[code lang=”js”]
$(‘body’).on(‘change’,’.a13′,function(){
//$(".a13").change(function () {
/*横行相乘-*/

var sumtotal = 0;
var rowinput = ‘input[class="a13"]’;
$.each($(rowinput), function () {
var relval = $(this).attr(‘rel’);
var inputa13 = $(this).val();

var inputa14 = 0;
$(‘input[class="a14"]’).each(function () {
if ($(this).attr(‘rel’) == relval) {
var a14 = $(this).val();

inputa14 = keepTwoDecimalFull(a14);// 输出结果为 2位小数

}
});
var total = inputa13 * inputa14;
total = keepTwoDecimalFull(total);

console.info(total);

sumtotal += parseFloat(total);
//sum += parseInt(this.value);
//sum += parseFloat(this.value);

});
console.info(‘总数是:’+ sumtotal);
$(".b3").val(sumtotal);
$("#a19").val(sumtotal);
/*//横行相乘-*/

});
[/code]