代码之家  ›  专栏  ›  技术社区  ›  Derple

动态元素与jQuery on('click')不按预期工作

  •  0
  • Derple  · 技术社区  · 4 年前

    我在尝试返回此警报的rowid时未定义,这些行是在首次加载页面后动态创建的。

    问:如何使用jQuery使新添加的项按预期工作? 示例代码: https://jsfiddle.net/ariia/g81kqro2/46/ (单击“新建行”时,每一行都有一个id,但当您单击输入时,它们应显示带有rowid编号的警报。当前它们正在发出警报,但为空。)

    $('div#rows').on('change', function(){
        var rowid=$(this).data('rowid');
        alert(rowid);
         rowTotal(rowid);
      })
    
       rowtemplate = `
            <div class='row'>
               <input class='rowinput' type='number' id='row-${rowid}-units' data-rowid='${rowid}' placeholder='row-${rowid}-units'>
              <input class='rowinput' type='number' id='row-${rowid}-unit-price' data-rowid='${rowid}' placeholder='row-${rowid}-unit-price'>
              <input class='rowinput' type='number' id='row-${rowid}-total' data-rowid='${rowid}' placeholder='total'>
        </div>
        `
    
    0 回复  |  直到 4 年前