为每个隐藏值实现唯一的id名称

时间:2018-01-29 09:03:29

标签: php jquery mysql arrays

我正在尝试为每个隐藏的输入实现一个唯一的id名称,而条件假设我有这个代码

while(mysqli_stmt_fetch($stmt)):

<button class="btn btn-success btn-xs" onclick="InitTime(<?php echo $row_id; ?>)">Send</button>

<input type="hidden" id="on" value="<?php echo $row_id; ?>">

endwhile; 

function InitTime(row_id, on) {
    var conf = confirm("Are you sure to execute <?php echo $row_id; ?>");
    var on = $("#on").val();
    if (conf == true) {
        $.post("ajax/initializeTime.php", {
                row_id: row_id,
                on:on
             }
        );
    }
}

但每次单击按钮时,我都会从DB获取第一行ID,但它假设是来自DB的不同ID

在我的initializeTime.php中,我检索相同的ID

if(isset($_POST['row_id']) AND isset($_POST['on']) )
{
     //Here I retrieve the first ID from DB 
}

1 个答案:

答案 0 :(得分:0)

问题是您在上有多个ID 。 ID应唯一

你可以这样:

while(mysqli_stmt_fetch($stmt)):

<button class="btn btn-success btn-xs" onclick="InitTime(<?php echo $row_id; ?>)">Send</button>

<input type="hidden" id="on<?php echo $row_id; ?>" value="<?php echo $row_id; ?>">

endwhile; 

id现在应为on1on2等等。

在你的js:

function InitTime(row_id) {
    var conf = confirm("Are you sure to execute " + row_id +"?");
    var on = $("#on" + row_id).val();
    if (conf == true) {
        $.post("ajax/initializeTime.php", {
                row_id: row_id,
                on:on
             }
        );
    }
}