我有一个Django项目,在主页上,我通过点击按钮生成行。 默认情况下,行0存在。 单击按钮时,将创建“行1”,再次单击时,将创建“行2”,依此类推。。。 在每一行中存在相同的项:搜索栏,按钮和数字输入。 它们的ID是基于计数器创建的。 因此按钮创建了一个ID为“row1”的div,然后在该行中有“search1”,“button1”和“number_input1”
单击按钮时,它将输入的值输入到“search0”元素中,并找到与该输入相对应的值。。。 问题是,我是通过引用id为“search0”的搜索栏来查找值的,尽管有人可能正在使用行3.。。 所以我试图确定如何在与被点击的按钮相同的行中找到搜索栏。
例如:如果我单击'Button3'(第三行中的按钮),那么我如何引用'Search3'(第三行中的搜索栏)而不使用它的ID。 诀窍是,这不能是静态字符串,因为行是动态创建的,因此所有按钮共享相同的功能。
有没有一种方法可以检查它所在的行,然后在同一行中提取搜索元素中的值。。。?
这是检查值函数
function checkQty(id){
value = document.getElementById("search0").value;
button = document.getElementById(id);
for (i=0; i < products_qty.length; i++){
if (products_qty[i][0] == value){
button.innerHTML = JSON.stringify(products_qty[i][1]);
}
}
}
这个按钮将它自己的id传递到带有'id'变量的函数中,但是无论按哪个按钮,我都是通过'search0'进行搜索的
如有任何指导,将不胜感激。 谢啦!
感谢@willi123yao,我对子字符串进行了一些研究,并得出了以下解决方案
function checkQty(id){
rowNum = id.substring(id.length - 1, id.length);
value = document.getElementById("search"+rowNum).value;
button = document.getElementById(id);
for (i=0; i < products_qty.length; i++){
if (products_qty[i][0] == value){
button.innerHTML = JSON.stringify(products_qty[i][1]);
}
}
}
从本质上讲,我是取所传递的按钮ID的最后一个字符,然后将其插入搜索,以确保搜索和按钮在同一行中。 我测试过了,它工作得很完美