gpt4 book ai didi

javascript - 从 Jquery HandsonTable() 获取 $_POST 到 php

转载 作者:行者123 更新时间:2023-11-30 00:14:43 25 4
gpt4 key购买 nike

我是 javascript/jquery/ajax 新手。我正在尝试将 jquery handsonTable ( http://handsontable.com/index.html ) 中的数据获取到我的 php 代码中。

我从 mysql 数据库计算一个表,然后使用 php 构建 jquery 代码来显示它。

现在我希望能够获取用户修改的表,从表单提交时获取帖子并使用 php 注入(inject)它。

下面是一个测试代码,我尝试将 $_POST 从 jquery 发送到 save.php。问题是我从 test.php 中什么也没得到。

有没有简单的方法可以从handsonTable 获取一个不错的$_POST 到php 文件?谢谢,对这些愚蠢的问题感到抱歉,我是新手,我在这里寻找答案,但没有任何效果,所以这就是我问的原因。

<?php
if (isset($_POST))
var_dump($_POST);
?>

<script src="../lib/jquery.min.js"></script>
<script src="../dist/jquery.handsontable.full.js"></script>
<link rel="stylesheet" media="screen" href="../dist/jquery.handsontable.full.css">

<form action="save.php" id="searchForm" method="post">
<input type="submit" value="test" name="test">

<pre id="console" class="console">console</pre>

<div id="dateTable"></div>

<script>


var $console = $("#console");
var $container = $("#dateTable");

var data = [
{day:"Th 1", p1:"",p2:""},
{day:"Fr 2", p1:"",p2:""},
{day:"Sa 3", p1:"",p2:""}
];

$container.handsontable({
data: data,
});

$( "#searchForm" ).submit(function( event ) {

event.preventDefault();

var $form = $( this ),
url = $form.attr( "action" );

var post = JSON.stringify({"data":handsontable.getData()});
var posting = $.post( url, post );

posting.done(function( data ) {
$console.empty().append( post );
});
});


</script>

</form>

最佳答案

您的提交按钮没有“test”ID,只有“test”名称。设置 ID,它应该发布到您的网络服务器。

澄清一下:名称属性通常仅可用于表单,因为输入元素将具有“名称”和“值”属性 - 与提交的数据形成名称/值对。要使用 jQuery 有效地选择页面上的一个唯一元素,请使用该元素的 ID - 您尚未在代码中设置该 ID。

我不确定您是否熟悉内置的浏览器开发人员工具,但这正是您所需要的(授人以渔等)。首先测试您的 JavaScript,我建议使用 Chrome 并按 F12 来访问开发者工具。

“网络”选项卡将告诉您需要了解的有关浏览器发出和发送的请求的所有信息,并且会准确告诉您在提交表单时正在发送(未发送)的内容。您也可以在 JavaScript 代码中放置断点,以向您展示为什么函数没有执行您期望的操作。

关于javascript - 从 Jquery HandsonTable() 获取 $_POST 到 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23756163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com