我有从数据库收到的表:
//$id = $_SESSION[‘staff_id’];
$teamResult = getQuarter($leader_id);
$count1 = 0;
if (mysqli_num_rows($teamResult) > 0)
{
?>
1st Quarter |
---|
while($row = mysqli_fetch_array($teamResult))
{
$staff_id = $row[‘staff_id’];
$username = $row[‘username’];
$date1 = $row[‘date1’]; $fdate1 = $row[‘fdate1’]; $q1 = $row[‘q1’]; $cfm1 = $row[‘cfm1’];
?>
echo “Ev.date: “.$date1.”
Fb.date: “.$fdate1.””
.””;
}else {echo “”;}
?>
$count1++;
}
} else {
echo ”
No Data to Display
“;
}
?>
此字段是复选框,但我将其更改为文本以查看其值:
这是我在表中得到的:
然后我有AJAX功能:
$(function () {
$(document).on(‘click’, ‘.confirm’, function(){
var stid = $(“#stid”).val();
$.ajax({
url: “comAssessment/change.php”,
method: “POST”,
data: {stid: stid},
dataType:”text”,
success: function (data) {
$(‘#confirm’).hide();
$(‘#result’).html(data);
}
});
});
});
并且change.php:
$info = $_POST[“stid”];
list($value1,$value2) = explode(‘|’, $info);
echo $value1;
echo ”
“;
echo $value2;
但问题是我没有得到正确的价值.对于第一行和第二行,我得到1 | 1000302.即使是第二行,其中应该是1 | 1000305.问题是什么,我该如何解决?
解决方法:
ID必须是唯一的. $(“#stid”)将始终选择具有该ID的第一个元素.
您可以简单地使用$(this)来获取您单击的元素的值.
$(document).on(‘click’, ‘.confirm’, function(){
var stid = $(this).val();
$.ajax({
url: “comAssessment/change.php”,
method: “POST”,
data: {stid: stid},
dataType:”text”,
success: function (data) {
$(‘#confirm’).hide();
$(‘#result’).html(data);
}
});
});
标签:php,jquery,ajax
来源: https://codeday.me/bug/20190727/1552092.html