Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在发票表单中的每个td中生成id_Javascript_Jquery - Fatal编程技术网

Javascript 在发票表单中的每个td中生成id

Javascript 在发票表单中的每个td中生成id,javascript,jquery,Javascript,Jquery,我正在处理发票表单,当我尝试编辑发票表单时,我不知道如何在每个td中生成id。。。因为我使用ajax调用每个产品的不同数据,并且当我需要更改某些产品时,第二个或第三个td中的每个示例都会更改第一个td 发票表格的一部分: <td><input type="text" name="cat[]" id="cat_(HERE I NEED PUT A ID)" class="form-control"></td> <td><input type="

我正在处理发票表单,当我尝试编辑发票表单时,我不知道如何在每个td中生成id。。。因为我使用ajax调用每个产品的不同数据,并且当我需要更改某些产品时,第二个或第三个td中的每个示例都会更改第一个td

发票表格的一部分:

<td><input type="text" name="cat[]" id="cat_(HERE I NEED PUT A ID)" class="form-control"></td>
<td><input type="text" name="subcat[]" id="subcat_(HERE I NEED PUT A ID)" class="form-control"></td>
<td><input type="text" name="vineta[]" id="vineta_(HERE I NEED PUT A ID)" class="form-control"></td>

几乎可以肯定的是,您不希望每个td元素上都有id,但如果您真的想要,这里有一种方法:

// Spin through all rows in the table
$("#yourtable tr").each(function(row) {
    // Spin through all cells in the row
    $(this).find("td").each(function(col) {
        // Assign an ID
        this.id = "cell" + row + "x" + col;
    });
});
…其中,表格只是与表格匹配的选择器的占位符。假设您没有任何嵌套表

不过,你可能也不想这样。您没有给出触发ajax调用的任何细节,但通常在出现这种情况时,它与您希望进行更改的行中某个元素的用户操作有关,例如,增加或减少计数。如果这是您的用例,请记住该行,然后更新该行中的单元格,而不是对整个文档进行搜索

例如:

$table.onclick,输入[type=button],函数{ var$btn=$this, 操作=$btn.val==+-1:-1, $row=$btn.最近的'tr'; //使用setTimeout模拟ajax。。。 setTimeoutfunction{ var$input=$row.find'input[name=foo[]]; $input.val+$input.val+操作; }, 10; };
我终于在这篇文章后面找到了答案

守则:

$sql = "SELECT @i := @i + 1 AS i, cod, nombreProd, .....FROM PRODUCTS, (SELECT @i:=0) b WHERE .... ";
$result = $conn->query($sql);
while($row = $result->fetch(PDO::FETCH_ASSOC)) {
echo $i = $row['i'];
$cod = $row['cod'];
....
以及每个tr>td>输入的内部:

<td><input type="text" data-type="cod" name="cod[]" value="<?php echo $cod; ?>" id='cod_<?php echo $i; ?>' minlength="2" class="form-control autocomplete_txt required" autocomplete="off" required></td>

什么是创建HTML?你能展示你的AJAX方法吗?它提供了什么类型的成功数据?ID指的是一个随机数?或者哪个ID?1,2对我来说似乎不是随机的。@user3236149只使用现有元素的计数作为您的ID。当您添加新元素时,它们的计数将与您的下一个ID一样增加。让我更好地解释一下,当我刷新页面或转到edit.php页面时,发票表单将显示我要编辑的产品,我需要在每个产品的TDs或TD输入的内部显示一个ID _1,_2,_3,。。。对于每个示例的每个TD,我可以通过AJAX编辑它,这是我想要或需要编辑的产品。这就像我拥有的发票,请查看以下url: