2011-09-14 73 views
0

當我試圖獲得文本框的值後,我使用下面的代碼獲取未定義的值。這是可能的還是我缺少一些基本的東西?如何使用JQuery後ajax後獲得文本框的值

<input type="text" size="3" value="<?php echo $item['qty'] ?>" id="quantity[<?php echo $sizeid?>]" name="quantity[<?php echo $sizeid?>]"> 

$.ajax({ 
type: "POST", 
url: "bin/process_updateqty.php", 
dataType: 'json', 
data: dataString, 
success: function(data) { 
    $.each(data, function(key, value) { 
     alert($('#quantity['+key+']').val()); 
    }); 
} 

});

+0

你是說,你的回報數據不確定?你解析過你的json repsonse嗎? data = $ .parseJSON(data)?? – Cole

回答

0

感謝您的所有答案。我想到了。

對原始問題的回答是 - 是的,您可以在回發後引用文本框。問題是我正在引用一個文本框數組不正確。

我本來引用這樣的文本框:

$('#quantity['+key+']').val() 

不過我應該已經引用文本是這樣的:

$('input[name="quantity['+key+']"]').val() 
1

您的成功函數將使用來自eachkey iterator- [0,1,2 ...],讓你的查詢選擇是:

#quantity[0], #quantity[1], (etc) 

這是你的原意?我想不是。我想不是。我想你也許想:

$.each(data, function(key, value) { 
    alert($(value).val()); 
}); 
0

我們需要一些你的HTML的,或者至少這個輸出(用於爲您id):

<?php echo $sizeid?> 

事實上,作爲RSG說, $.each方法用於遍歷數組,因此在您的函數中,參數key參數是與value參數一起傳遞的元素的索引,如you can read in the documentation

另外,你確定你的data對象實際上是一個數組嗎?

相關問題