Javascript POST 不起作用:将 Javascript 数组发送到 PHP
尽管进行了多次尝试,但您在将 JavaScript 数组传递给 PHP 时遇到了挑战通过 POST 的 PHP 脚本。为了寻求解决此问题的帮助,您提供了以下代码:
JavaScript:
function sendToPHP() { $.post("index.php", { "variable": toSearchArray }); }
PHP:
<?php $myval = $_POST['variable']; print_r ($myval); ?>
问题解决:
您可能会因误解 AJAX(异步 JavaScript 和 XML)的运行方式而遇到问题。虽然 jQuery 简化了 AJAX 的使用,但需要正确理解该过程。
在您的情况下,sendToPHP() 函数会触发对 index.php 页面的 POST 请求,并将变量参数设置为 toSearchArray。然而,定义 AJAX 成功处理函数来捕获服务器的响应至关重要。
使用 index.php 的示例:
<html> <head> <title>Test</title> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $('#btn').click(function(){ var txt=$('#txt').val(); if(txt == ''){ alert("Enter some text"); } else { $.post('catcher.php', {'text':txt}, function(data){ $('#response').text(data.message); }, 'json'); } }); }); </script> </head> <body> <input type="text" id="txt"> <input type="button" id="btn"> <pre id="response" style="overflow:auto;width:800px;height:600px;margin:0 auto;border:1px solid black;">