使用html模板将数据传递到php文件

时间:2017-02-10 22:16:42

标签: php jquery html ajax

如何在调用ajax时使用我尝试传递的数据加载文件table.php。我使用jquery.load方法调试第二个参数是一个数据数组,但不是'工作。

这是我必须做的一个基本示例,我收到此错误

Notice: Undefined variable: field in C:\xampp\htdocs\prueba2\table.php on line 2

的index.php

<?php
    $datos =  array(array('nombre1','apellidos1'),array('nombre2','apellidos2'));
?>
<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
        <h2>Tabla</h2>
        <div id="tabla">
            <table border="1px">
            <?php
                foreach ($datos as $dato) {
                    echo "<tr><td>".$dato[0]."</td><td>".$dato[1]."</td></tr>";
                }
            ?>
            </table>
        </div>

        <form id="search-form" method="POST">
            <input type="text" id="search" name='search'>
            <input type="submit" value="Buscar">
        </form>
        <script
              src="https://code.jquery.com/jquery-1.12.4.min.js"
              integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ="
              crossorigin="anonymous"></script>
        <script type="text/javascript" src="submit.js" ></script>
</body>
</html>

submit.js

$( "#search-form" ).submit(function( event ) {
  event.preventDefault();
  $.ajax({
      url: "http://localhost/prueba2",
      data:{ action:"selection" }

    })
    .done(function( data ) {
        $data = { field: $("#search").val()};
        $("#tabla").load("table.php", $data);   
    });

});

table.php

<div id="tabla">
    <?=$field?>
    <table border="1px">
        <tr>
            <td>a</td><td>b</td>
        </tr>
</table>

1 个答案:

答案 0 :(得分:0)

$field中不存在变量table.php。您需要使用$_POST['field']$_GET['field']代替。