我正在尝试检查数据库中是否存在用户,然后更改输入字段的值以匹配该用户的信息。我有以下代码,但它似乎不起作用。
<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对象。我不确定错误在哪里。谢谢你的任何意见。
答案 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