Javascript函数更改输入字段

时间:2014-07-09 18:14:39

标签: javascript jquery ajax

我正在尝试检查数据库中是否存在用户,然后更改输入字段的值以匹配该用户的信息。我有以下代码,但它似乎不起作用。

    <button onclick="checkAvailability()">Check Availability</button>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>
function checkAvailability()
{
    $(function()
    {
        $.ajax(
        {
            type: 'POST',
            url: 'test.php',
            data: "name=" + $("#name").val(),
            dataType: 'json',
            success: function(row)
            {
                $('#name').val(row[0]);
                $('#address1').val(row[1]);
                $('#phone1').val(row[2]);
                alert('success');
            }
        });
    });
}
</script>

警报消失,但没有更改任何值。我使用Firebug检查了响应,响应是一个带有用户信息的JSON对象。我不确定错误在哪里。谢谢你的任何意见。

2 个答案:

答案 0 :(得分:2)

如果您有json对象,则必须使用:$("#name").val(row.name);

答案 1 :(得分:0)

如果你得到一个json,那么它可能看起来像这样

var json = [{"name": "sample"},{"phone":"sample"},{"address":"sample"}];

当你在做行[0]时。 what you get is an object["name":"sample"] 所以你必须做出以下改变

 success: function(row)
            {
                $('#name').val(row.name);
                $('#address1').val(row.address);
                $('#phone1').val(row.phone);
                alert('success');
            }

还要确保您的输入类型具有ID的名称,地址1和phone1