我无法使用PHP通过AJAX获取数据

时间:2017-09-13 16:32:10

标签: php jquery ajax

我试图通过.php文件中的ajax传递值,即data:{num:val}。但价值并没有过去。我试图通过alert()显示值,但它没有显示任何内容。

  <form method="post" id="frm" name="new" onsubmit="return false;">
        Enter a Value: <input name="value1" type="text" id="num"><Br/><Br/>
        <input type="submit" value="Click" id="click">&nbsp;&nbsp;&nbsp;
    </form>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script type="text/javascript">
        jQuery(document).ready(
                $('#click').on(
                function(){
                    var val=$('num').val();
                    alert(val);
                    jQuery.ajax({
                            method:'POST',
                            url:'table_php.php',
                            data:{num:val},
                            success: function(response){
                                console.log(response);
                            }
                });
                }
                )
                );
    </script>

这是我的table_php.php文件

<?php
echo $var=$_POST["num"];
if(isset($var)&&!empty($var))
{
 echo "hello";
}

2 个答案:

答案 0 :(得分:0)

如果要在jQuery中通过id获取输入的值,则必须在id的名称前添加#。替换这个:

var val=$('num').val();

用这个:

var val=$('#num').val();

答案 1 :(得分:0)

您的代码中存在两个问题。

- &GT;语法错误$("#click").on(function()将其更改为$("#click").click(function()。如果您使用的语法应该是这样的

$( "#click" ).on( "click", function() {
  console.log( $( this ).text() );
});

- &gt;然后var val=$('num').val(); num是一个ID,因此将#设为var val=$('#num').val();

现在工作正常意味着现在正在显示警报。

jQuery(document).ready(
  $("#click").click(function(){
                    var val=$('#num').val();
                    alert(val);
                    jQuery.ajax({
                            method:'POST',
                            url:'table_php.php',
                            data:{num:val},
                            success: function(response){
                                console.log(response);
                            }
                });
  })
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form method="post" id="frm" name="new" onsubmit="return false;">
        Enter a Value: <input name="value1" type="text" id="num"><Br/><Br/>
        <input type="submit" value="Click" id="click">&nbsp;&nbsp;&nbsp;
    </form>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>