如何从隐藏的输入中捕获ID总计:
<?php
foreach ($decodeMessages as $messages) {
print "
<div class='row clearfix js-sweetalert'>
<div class='col-sm-12'>
<form action='' mehtod='POST'>
<div class='card message-page'>
<div class='header'>
<h2>
From: " . $messages['Name'] .
"<small>
Email:" . $messages['Email']
."</small>
</h2>
<ul class='header-dropdown m-r--5'>
<li>
<input type='hidden' id='mtotal' value='".$messages['messageTotal']."' >
<button type='button' onclick='showCancelMessage();' name='".$messages['messageTotal']."' id='".$messages['messageTotal']."' class='btn btn-default waves-effect m-r-20' data-type='cancel'><i class='fa fa-trash-o'></i></button>
</li>
</ul>
</div>
</form>
<div class='body'>";
$iv = chr(0x0) . chr(0x0) . chr(0x0);
print openssl_decrypt(base64_decode($messages['Message']), 'aes-256-cbc', $messages['toUser'], OPENSSL_RAW_DATA, $iv);
print "</div>
</div>
</div>
</div>
";
}
?>
到目前为止,我已经尝试过:
var datastring = $("#mtotal").val();
$.ajax({
url: "",
type: "POST",
data: {
mID: "mID="+datastring
},
dataType: "html",
success: function () {
swal("Done!", "Message succesfully deleted!"+datastring, "success");
},
error: function (xhr, ajaxOptions, thrownError) {
swal("Error deleting!", "Please try again", "error");
}
});
我在完成中添加了datastring
,以查看它是否从按下按钮的div中选择了正确的ID。是43,它输出40
。
循环图片loop image
我的问题是:我如何从隐藏的输入中捕获动态总数字并打印该div上的“提交”按钮提交的特定数字?
我如何在同一页面上使用PHP处理该帖子
if (isset($_POST['mID'])) {} // that does not work
非常感谢您的帮助:)
答案 0 :(得分:0)
您正在foreach循环中创建ID为“ mtotal”的多个隐藏输入。您必须为每个隐藏的输入赋予唯一的ID,也许基于循环索引/键:
foreach ($decodeMessages as $key => $messages) {
并且:
<input type='hidden' id='mtotal_" . $key ."' value='".$messages['messageTotal']."' >
您还应该将此键作为数据属性添加到相应的按钮上,如下所示:
<button class='cancel-button' type='button' data-key='".$key."'><i class='fa fa-trash-o'></i></button>
此外,最好像上面一样为您的“取消”按钮使用一个类,然后在您的javascript文件中添加点击处理程序。您可以从按钮获取data-key属性,然后选择隐藏的输入,如下所示:
$('.cancel-button').click(function(){
var key = $(this).attr('data-key');
var datastring = $("#mtotal_" + key).val();
...
});