加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 无法通过ajax传递checkbox的值

发布时间:2020-12-13 21:57:00 所属栏目:PHP教程 来源:网络整理
导读:我有从数据库收到的表: p id="result"/p ?php//$id = $_SESSION['staff_id'];$teamResult = getQuarter($leader_id);$count1 = 0;if (mysqli_num_rows($teamResult) 0) {? table id="confirm" tr th1st Quarter/th /tr ?php while($row = mysqli_fetch_arra
我有从数据库收到的表:

<p id="result"></p> 
<?php
//$id = $_SESSION['staff_id'];

$teamResult = getQuarter($leader_id);
$count1 = 0;
if (mysqli_num_rows($teamResult) > 0) 
{
?>   

    <table id="confirm">             
      <tr>
        <th>1st Quarter</th>
      </tr>
    <?php
    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'];
    ?>
      <tr>
        <td>
        <?php if($date1 != NULL){
                echo "Ev.date: ".$date1."<br/> Fb.date: ".$fdate1.""
                    ."<input type='text' id='stid' name='confirm' class='confirm' value='". $q1. "| " . $staff_id ."'>";
            }else {echo "";} 
        ?> 
        </td>
      </tr>
     <?php
    $count1++;
    }
} else {
        echo "<h2>No Data to Display</h2>";
    }
?>                
</table>

此字段是复选框,但我将其更改为文本以查看其值:

<input type='text' id='stid' name='confirm' class='confirm' value='". $q1. "| " . $staff_id ."'>

这是我在表中得到的:

enter image description here

然后我有AJAX功能:

<script>
$(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);
            }
        });  
    });

});  
</script>

并且change.php:

$info = $_POST["stid"];
list($value1,$value2) = explode('|',$info);
echo $value1;
echo "<br/>";
echo $value2;

但问题是我没有得到正确的价值.对于第一行和第二行,我得到1 | 1000302.即使是第二行,其中应该是1 | 1000305.问题是什么,我该如何解决?

解决方法

ID必须是唯一的. $(“#stid”)将始终选择具有该ID的第一个元素.

您可以简单地使用$(this)来获取您单击的元素的值.

$(document).on('click',function(){
    var stid = $(this).val();
    $.ajax({
        url: "comAssessment/change.php",success: function (data) {
            $('#confirm').hide();
            $('#result').html(data);
        }
    });  
});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读