javascript - 使用 JavaScript 将数据发送到 PHP

标签 javascript php

我想用 Javascript 将一个 DIV 标记中的数据和文本发送到 php 值中。

我在使用这段代码时遇到问题:

<html>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js">
<script>
    $.post('http://localhost/test/index.php', {
        name: $('.class').html()});
        $(document).ready(function(){
            $("#my_form").on("submit", function () {
                var hvalue = $('.class').text();
                $(this).append("<input type='hidden' name='name' value=' " + hvalue + " '/>");
            });
    });
</script>
<form action="" method="POST" id="my_form">
    <div class="class" name="name">
        this is my div
    </div>
    <input type="submit" value="submit" name="submit" />
</form>

<?php
if (isset($_POST['name'])) {
    echo $_POST['name'];
}

它不起作用。什么都没有出现!没有 php 工作!

我该如何解决这个问题?

最佳答案

您已声明您想执行以下操作:

I want to send the data and the Text that is in one DIV tag with Javascript into php values.

It doesn't work . Nothing appear ! and NO php working !

首先,您需要确定“出现”的含义。您是否尝试获取 PHP 脚本的结果并将它们嵌入到页面中?

首先,让我们关注您的第一个项目,即发送数据。请执行以下操作:

从您正在发出的发布请求中删除 onReady 语句。这令人困惑,并可能导致意外结果:

 $.post('http://localhost/test/index.php', {
        name: $('.class').html()});
        $(document).ready(function(){
            $("#my_form").on("submit", function () {
                var hvalue = $('.class').text();
                $(this).append("<input type='hidden' name='name' value=' " + hvalue + " '/>");
            });
    });

可读性是这里的关键。这看起来绝对很奇怪,我从未见过有人这样做过。

请注意,我将您的类从 .html() 更改为 .text()。这是因为根据您的示例代码,此时您只使用文本节点而不是 html。如果它实际上是 html,那么您可以使用 html() 函数。

其次,您尝试访问的 PHP 脚本是直接嵌入的。 尝试将它移动到一个新文件,例如我上面的示例 myPhpScript.php

在该文件中将是您的 PHP 代码,用于处理发布请求:

<?php
    if (isset($_POST['name'])) {
    echo $_POST['name'];

您在 POST 请求中缺少 on success 处理程序,因此当请求成功时,不会发生任何事情。请将以下内容添加到您的请求设置对象中。此时您也可以在准备就绪的情况下执行以下操作

$(document).ready(function(){
    $.post('http://localhost/test/myPhpScript.php', {
            name: $('.class').html()}
           ,function(data){
                $(".class").text(data).append("<input type='hidden' name='name' value=' " + hvalue + " '/>");
            }
    });
});

这应该可以帮助您入门,但请记住,还可能存在其他问题。我在这里也有自己的问题。我要归咎于缺乏咖啡因和一个蹒跚学步的 child ,再加上没有保持文档打开足够长的时间以确保我得到它完美 :)。

有人好心地纠正了我的错误,为此我感谢你。

关于javascript - 使用 JavaScript 将数据发送到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21659342/

相关文章:

javascript - 将远程html文件加载到grapesjs中

PHP 数组和引用传递

php - 删除侧边栏商店页面 woocommerce

php - 使用 PHP 或 HTML5 进行图像弯曲

php - 变量php空建议

javascript - HighStock 图表 : Extract time based on user selection from the Navigator window

javascript - ECMAScript 5 中的 "actions are taken"是什么意思?

javascript - tinymce 不适用于 &lt;iframe&gt; 标记中的文本区域

javascript - top.postMessage 源错误未被捕获

javascript - 无法将 ref 分配给渲染 Prop 中的组件