所以我有一个使用 mySQL 表中的 .get() 方法的 ajax 搜索脚本。
在每一行,我都会有一个按钮、2 个文本字段和 1 个隐藏输入,其值来自 ajax 结果。如何在单击按钮时获取特定的行值?
我的ajax代码:
$("#cautare_p").keyup(function(){
$.get("php/cautare/script_cautare.php","p="+$(this).val(),
function(rez){
$(".afisare_cautare").html(rez)
})
//end of search script
});
php代码:
echo "<table width='100%' border='1' cellpadding='1' cellspacing='1'>
<td>Categorie</td>
<td>Produs</td>
<td>Cantitate</td>
<td>Discount</td>
<td></td>
</tr>";
while(mysql fetch asocc code here){
$rr.="<tr><form>
<td><span class='link'><a href='acasa.php?produse=lista&brand=$categId'>$numeCateg</a></span></td>
<td><span class='link'><a href='acasa.php?produse=vizualizare&prodid=$prodId'>$numeProd</a></span>
<br><span style='font-size:14px;'>U.M.:$um Stoc:$stoc Pret fara T.V.A.:$pretftva Pret cu T.V.A.:$pretctva</span>
<input type='hidden' id='hiddenID' value='$prodId'>
</td>
<td><input type='text' id='text1' value='0'></td>
<td><input type='text' id='text2' value='0'></td>
<td>
<input type='button' id='buton' value='Get'></td>
</form>
</tr>";
}
echo " $rr </table>";
结果 ajax 代码将是这样的:
$("#cautare_p").keyup(function(){
$.get("php/cautare/script_cautare.php","p="+$(this).val(),
function(rez){
$(".afisare_cautare").html(rez),
$("#buton").click(function(){
$.get("php/cautare/insertInDb.php","h="+$("#hiddenID").val()+"&t1="+$("#tex1").val()+
"&t2="+$("#hiddenID").val());
});
})
//end of search script
});
解决了:
$(".afisare_cautare table").find("tr").click(function(){
var prodid=$(this).closest("tr").find("input:hidden:eq(0)").val();
var cant=$(this).closest("tr").find("input:text:eq(0)").val();
var discount=$(this).closest("tr").find("input:text:eq(1)").val();
$("#test").text("ProdId: "+prodid+" Cantitate: "+cant+" Discount: "+discount);
});