javascript - 在 jQuery 中使用 .append 提交值 $_POST 变量包含火狐中的数据。但在 chrome 上 $_POST 变量为空

标签 javascript php jquery post

我想将数据附加到已有的表单中。单击“提交”按钮时使用 JQUERY,如下所示。

  $('#submit-buildaboat').click(function(){
    console.log('clicked');
    var canvasData = document.getElementById('select-boat-color');
    var cdataurl = canvasData.toDataURL('image/png');
    var input = $("<input>")
               .attr("type", "hidden")
               .attr("name", "canvasImage").val(cdataurl);
    $('#build-a-boat').append($(input));
  });

它在 Firefox 上运行得很好,在下一页上我可以看到结果并访问 $_POST 变量中的所有值。

然而,在 Chrome 浏览器上,即使表单已填写并附加了数据,$_POST 变量也会返回空。

请建议为此做什么。

最佳答案

发生这种情况可能是因为您先提交了表单,然后附加了新的输入。 (假设您使用 <input type="submit"> )

如果您要在单击提交按钮后进行附加,那么我想说您不应该使用 <input type="submit"> 。使用<input type="button">然后单击按钮,将新的输入字段附加到表单中,然后使用 form.submit() jquery提交表单的方法。

关于javascript - 在 jQuery 中使用 .append 提交值 $_POST 变量包含火狐中的数据。但在 chrome 上 $_POST 变量为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41756733/

相关文章:

JavaScript:将 yyyy-mm-dd 快速解析为年月日数字

javascript - 如果子窗口关闭,则重新加载父窗口

javascript - Jquery 中没有从 php json_encode 接收到数据

php - Facebook-wall like MySQL结构问题

javascript - 当复选框长度大于 1 时,提交按钮不启用

javascript - 如何只设置一键停止/启动setInterval函数

php - Python 库和驱动程序

php - 调用未定义的方法 Illuminate\Database\Query\Builder::links()

javascript - JQMIGRATE : Migrate is installed, 版本 3.0.0 日志,最低版本

c# - 如何使 Ajax Post 到 Handler.ashx 安全并停止直接调用处理程序