ajax - 无法使用 jQuery 附加到附加元素

标签 ajax jquery

我正在使用 jQuery 和 AJAX 向表中添加行。我在函数中有以下代码。

var fila='<tr>';
fila+='<td><select id="listaPagares'+cantFilas+'"></select></td>'; //Keep this in mind
fila+='<td><select id="listaCuotas'+cantFilas+'"></select></td>';
fila+='<td><input type="text" name="valor'+cantFilas+'" id=”valor'+cantFilas+'" /></td>';
fila+='<td id="desc'+cantFilas+'"></td>';
fila+='<td id=”total'+cantFilas+'"></td>';
fila+='</tr>';
$('#lineaDetalle tbody').append(fila);

此后,我执行 AJAX 请求。另一个表中使用了相同的请求,因此我非常确定搜索的 XML 标签是否有效。看到上面的“listaPagares[i]”选择行了吗?在同一函数中,下面的几行中,我在 AJAX 请求的成功部分中执行此操作。

$(xml).find('data').each(function()
{
    var errmsg = $(this).find('rowsfound').text();
    if(errmsg!='yes')
    {
        if(errmsg=='no')
        {
            $('#error').text('No se encontraron pagarés.');
        }
        else
        {
            $('#error').text('Rut del alumno o del apoderado erróneos.');
        }
        $('#errmsg').show(500);
    }
    else
    {
        $(this).find('pagare').each(function()
        {
            $('#listaPagares'+cantFilas).append('<option value="'+$(this).find('numpagare').text()+'-'+$(this).find('rbd').text()+'">PAGARÉ N° '+$(this).find('numpagare').text()+' '+$(this).find('nomcolegio').text()+'</option>');
        });
    }
});

但是,当我按下添加新行的按钮时,将选项添加到选择的第二个追加不起作用。我也很确定程序会通过该行,我在它之前添加了一个警报并显示它。可能是什么?预先感谢您。

编辑:我在 success 子句中添加了整个过程,这样您就可以明白为什么我使用“this”。

最佳答案

你不能像这样在 append() 中使用 $(this) 。另外,您在 find() 中缺少 #.:

... $(this).find('numpagare') ... // `#numpagare` or `.numpagare`

首先缓存您的选择器,然后执行以下操作:

var $el = $('#listaPagares' + cantFilas),
    numPagare = $el.find('.numpagare').text(),
    nomColegio = $el.find('.nomcolegio').text(),
    rbd = $el.find('.rbd').text(),
    html = '<option value="' + numPagare + '-' + rbd + '">' +
            'PAGARÉ N° ' + numPagare + ' ' + nomColegio + 
            '</option>';

$el.append(html);

是不是更好看?

关于ajax - 无法使用 jQuery 附加到附加元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9797487/

相关文章:

javascript - 在运行时使用预先确定的对象分配变量

javascript - 使用 XMLHttpRequest 上传大文件时的进度条

jquery - 如何查找 ul(无序列表)中下一个 li(列表项)的 ID

php - AJAX/PHP 自动显示更新值

javascript - Raphaël.js 上清除集绘图的问题

javascript - Jquery Web服务调用无法读取未定义的属性 'contentDocument'

javascript - 使用 AJAX 重新加载 html 页面

jquery - 使用ajax和java servlet上传文件

php - X-可编辑从其他元素触发

javascript - 从一个对话框检索值并将其显示在另一对话框中