gpt4 book ai didi

javascript - 循环访问数据库中的值时获取输入框的唯一值

转载 作者:行者123 更新时间:2023-11-29 21:00:35 26 4
gpt4 key购买 nike

我正在使用 javascript 来实现搜索功能。

function searchbrand(){
var searchTxt = $("input[name='brandid']").val();
$.post("search-brand-vw.php", {searchVal: searchTxt})
.done(function(brandlist) {
$("#brandlist").html(brandlist);
});

}

在这里,我将输入框的值发送到单独的 php 文件。所以在这个页面中,我从 mysql 数据库填充一个表。因此有许多 brandid 字段。对于表的第一行,搜索按其应有的方式进行。但是,当第一行中有一个值,并且当我在第二行上进行搜索时,它也会从第一行获取值。如何仅获取我正在键入的行上的值。仅供引用,每行中有一个名为 DL_Id 的字段,该字段是唯一的。如何在该行中使用该值(也许带有 AND 子句)?

var searchTxt = $("input[name='brandid']").val();

这就是我从数据库循环的方式

$query=mysqli_query($link,"SELECT * FROM dl_commfactory_2 LIMIT 35");
while($row = mysqli_fetch_array($query)){
$dlid = $row['DL_Id'];
$brandid = $row['Brand_Id'];
?>
<tr>
<td><input type="text" name="dlid" readonly value="<?php echo $dlid; ?>" size="2"></td>
<td><input type="text" name="brandid" value="<?php echo $brandid; ?>" list="brandlist" id="output" onkeyup="searchbrand()" >
<datalist id="brandlist" name="taskoption">
<option> </option>
</datalist> </td>
<?php } ?>

最佳答案

首先,将对 searchBrand() 的调用更改为 searchBrand(this),以便将正在编辑的元素发送到该函数。

然后,相应地更改 searchBrand 函数:

function searchBrand(el){
var brandIdElement = $(el); //The element being edited
var searchTxt = brandIdElement.val(); //The new value sent
var searchTxtDL = brandIdElement.parents('tr').find('input[name="dlid"]').val(); //The dlid element's value in the same line

//Send the value of the dlid too
$.post("search-brand-vw.php", {searchVal: searchTxt, searchValDL: searchTxtDL})
.done(function(brandlist) {
//Get the brandList element for the specific line
var brandListEl = brandIdElement.parents('tr').find('datalist[name="taskoption"]');
brandListEl.html(brandlist);
});

}

可以实现一些性能优化,但如果性能不是问题,那么应该没问题。

关于javascript - 循环访问数据库中的值时获取输入框的唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37265998/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com