2014-07-09 96 views
0

我想要檢查用戶是否存在於我的數據庫中,然後更改我的輸入字段的值以匹配該用戶的信息。我有下面的代碼,但它似乎並沒有工作。Javascript函數來改變輸入字段

<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

能否請您添加的確切響應JSON你的問題。如果JSON格式正確,則應該訪問一個對象,而不是數組。 –

回答

2

如果你有一個JSON對象,你必須使用:$("#name").val(row.name);

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