如何使用Ajax每秒使用表单数据

时间:2018-08-30 23:27:16

标签: javascript php jquery ajax

我很困惑。谁能帮我? 这是代码:

index.php =>

<html>
<head>
<script src="jquery-1.2.6.min.js"></script>
<script>
    function chk(){
        var name = $('#name').val();
        $.ajax({
            type:"post",
            url:"test.php",
            data:{name:name},
            cache:false,
            success:function(html){
                $('#msg').html(html);
            }
        });
        return false;
    }
    setInterval (function chk() , 1000);
</script>
</head>
<body>
<form>
    <input type="text" id="name">
    <input type="submit" value="submit" onclick="return chk();return false;">

</form>

<p id="msg">Loading</p>
</body>
</html>

和test.php =>

<?php
$name = $_POST['name'];// $name is constant for each request that submited from ajax($name is a parameter)


$api -> new server_data();  

$results = $api ->show($name); 

print_r($result);//This data updates from server in every second

================================================ ======================

我正在尝试连接到API,但是在该API中,数据每秒都在变化,因此我必须看到这些变化。另一方面,我必须使用表单设置默认值。

但是这里的问题是,每次提交表单时,test.php中的发布值将为空,而ajax请求将无法正常工作。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

尝试将name属性添加到名称输入框元素。

<input type="text" id="name" name="name">

您的PHP $_POST['name']变量正在寻找具有html属性name="name"的输入元素,而您只有html属性id="name"

来源:PHP: Dealing with Forms