jQuery更改动态表内的输入值

时间:2016-06-27 23:02:56

标签: javascript jquery html ajax jquery-autocomplete

我有通过脚本创建的动态表:

function addRow(tableID) {
    var table = document.getElementById(tableID);
    var rowCount = table.rows.length;
    var row = table.insertRow(rowCount);
    var colCount = table.rows[0].cells.length;
    for(var i=0; i<colCount; i++) {
        var newcell = row.insertCell(i);
        newcell.innerHTML = table.rows[0].cells[i].innerHTML;
        switch(newcell.childNodes[0].type) {
            case "text":
                    if (newcell.childNodes[0].className === 'ui-widget ui-autocomplete-input') {
                        $(newcell.childNodes).autocomplete({
                            source: 'sites/produkt_suche.php'
                        });
                    }
                    newcell.childNodes[0].value= "";
                    break;
            case "checkbox":
                    newcell.childNodes[0].checked = false;
                    break;
        }
        $(".ui-widget").focusout(function(){
            var text = $(this).val();
            $.ajax({
                url: "sites/produkt_preis.php",
                type: "POST",
                dataType: "json",
                data: { text: text },
                success: function(result){
                    $("td:first-child").next().next().next().find("input").val($(this).innerHTML = result);
                }
            });
            $.ajax({url: "sites/produkt_beschreibung.php",
                type: "POST",
                dataType: "json",
                data: { text: text },
                success: function(result){
                    newcell.lastChild.value = result;
                }
            });
        });
    }

}

我需要填充最后一个td中的最后一个输入,其中包含我通过ajax得到的值,我还需要在第二个到最后一个td内填充第二个到最后一个输入,并通过ajax获得另一个值。

即使不是很好,它仍然部分工作。 最后一个输入被正确填充,但它也完成了下面的所有行(只有最后一次输入)。

倒数第二个输入正确填充,但是对于下方和上方的所有行(仅次于倒数第二个输入)已完成

你能帮助我吗?如你所见,我是javascript和jQuery的新手。

0 个答案:

没有答案