2

我正在使用 JQuery 和 SimpleModal Confirm Modal Dialog 在上传前显示确认框。表单提交正常,但由于我正在检查 PHP 中的 isset 提交按钮,因此它失败了。我如何使用带有设置提交按钮的 JQuery 提交帖子。这是代码

HTML

<form enctype="multipart/form-data" action="#duc" method="post" id="uploadform" >
    <input name="file" type="file" >
    <input name="Submit_upload" type="submit" value="Upload" id="Upload" >
</form>

jQuery

jQuery(function ($) {
  $('#Upload').click(function (e) {
    e.preventDefault();
    confirm("Continue to the Upload?", function () {
        $('#uploadform').submit();
    });
  });
})

PHP

if(isset($_POST['Submit_upload']) && $_FILES['file']['name'])
{
    // file uploading process.
}

我认为在确认 JQuery 提交表单之后,实际的提交按钮不会添加到 post 数组中。任何帮助都感激不尽。

4

2 回答 2

1

当您通过 提交表单时.submittype=submit输入值不会同时发送。有很多不同的方法可以解决/处理这个问题。一是做:

<input name="Submit_upload" type="hidden" value="true">
<input type="submit" value="Upload" id="Upload">

隐藏的输入被发送。

于 2013-01-26T18:27:11.673 回答
0

我试过你的代码,它工作正常

我只使用一页来使用您的代码。最重要的是,我将您的 PHP 代码和 jquery 代码放在 jquery.in 之后的头部,然后是 html 部分,它工作正常,为什么它不能在您的机器上工作,您可以清理缓存或浏览器吗?这是我的代码

<?php
if(isset($_POST['Submit_upload']) && $_FILES['file']['name'])
{
   echo $_POST['Submit_upload'];die;
}
?>
<html>
<head>
<script src="jquery.min.js" type="text/javascript"></script>


<script>
jQuery(function ($) {
$('#Upload').click(function (e) {
e.preventDefault();
confirm("Continue to the Upload?", function () {
    $('#uploadform').submit();
 });
});
})
</script>

</head>
<body>
<form enctype="multipart/form-data" action="#duc" method="post" id="uploadform" >
    <input name="file" type="file" >
    <input name="Submit_upload" type="submit" value="Upload" id="Upload" >
</form>


</body>

</html>
于 2013-01-26T18:40:51.040 回答