想用AJAX自动填充输入栏

时间:2013-04-24 18:49:25

标签: php javascript ajax

我想使用AJAX自动填充一些输入栏,我有一个小问题

这是HTML:

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

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

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

所以,当url被填满时,这个javascript就会运行

<script id="source" language="javascript" type="text/javascript">
$(function () {
    $('#url').bind('input', function () {
        $(this).val() // get  value
        $.ajax({
            type: 'POST',
            url: 'functions/ajax.php',
            data: {
                url: $('#url').val()
            },
            success: function (data) //on recieve of reply
            {
                $(function () {

                    $.ajax({
                        url: 'functions/ajax.php', 
                        data: "",
                        dataType: 'json', //data format      
                        success: function (data) //on recieve of reply
                        {
                            var namePHP = data[1]; 
                            var catagoryPHP = data[3];

                            $('#name').html(namePHP);
                            $('#catagory').html(catagoryPHP);

                        }
                    });
                });
            }
        });
    });
});
</script>

根据控制台,我得到2个有效按键响应,我得到一个POST响应我的数据,我得到一个返回假的GET ???

如果你想看那个

,我的ajax.php就在这里
<?php
require_once ('DBconnect.php');

$url = $_REQUEST['url'];

$url = mysqli_real_escape_string($con, $url);

$query = "SELECT * FROM `inserted_posts` WHERE `search_name` = '$url'";
$result = mysql_query($query);

$array = mysql_fetch_array($result);

echo json_encode($array);
?>

我得到了我需要的数据,但它没有插入输入场?

1 个答案:

答案 0 :(得分:0)

您必须使用val()来设置输入内容rg

$('#name').val(namePHP);

此外,您没有在第二个ajax请求中发送任何数据