2011-01-22 51 views
0

嘿,這是我第一次使用jQuery。我正在研究一個簡單的Twitter應用程序,該應用程序檢查用戶是否正在關注另一個用戶,但我無法在表單中輸入所輸入的值。在jQuery中獲取輸入值的問題

我有我的網頁上這種形式:

​​

而且使用形式的插件,這是我的JS:

var value = $('#form_friendship *').fieldValue(); 
$('#form_friendship *').submit(alert(value)); 

多數民衆贊成被警告的唯一的事情就是「用戶名,用戶名」而且它根本沒有輸入到域中的註冊文本。關於這裏有什麼問題的任何想法?謝謝

+1

僅供參考,在編輯區域上方有一個「代碼示例」按鈕,它看起來像**`{}`**。要設置代碼的格式,請突出顯示代碼,然後單擊該按鈕。我在這個問題上爲你照顧它。 – user113716 2011-01-22 23:24:20

+0

也許是因爲兩個輸入的默認值都是'用戶名'? – Sheavi 2011-01-23 00:41:50

+0

好的,這個有點不妥。首先,`value`是一個數組。您可能需要一個鍵值對的對象(地圖)。其次,`alert`不會返回任何東西。甚至不知道爲什麼它在那裏。第三,你的表單不會去任何地方。我不知道你的服務器端是如何工作的,但是你的表單需要一個目的地('action`屬性),或者你應該使用AJAX發送數據並得到響應。 jQuery表單插件,你似乎正在使用,將爲你做這個客戶端。 – 2011-01-23 00:43:58

回答

0

我認爲你的JavaScript應該看起來更像這個

var userA = $('input[name:user_a]').val(), 
userB = $('input[name:user_b]').val(); 

$('#form_friendship').submit(function(){ 
    alert(userA +', '+userB); 
}); 

,如果你想收集表格中的所有值但不指定實際輸入,你可以嘗試類似

$('#form_friendship').submit(function(){ 

    //creating array to put values 
    var inputs = []; 

    //loop to catch all inputs type=text 
    $(this).find('input[type=text]').each(function(){ 
     //pushing values into array 
     inputs.push($(this).val()); 
    }) 

    //joining alerting values in array 
    alert(inputs.join(', ')); 



}); 
0

不知道你的有什麼問題,但我把它們連接起來,如下所示,它適用於我。

<html class="ui-widget-content" lang="en_US"><head> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> 
<title>jQuery Form Plugin</title> 
<style type="text/css"> 
form { background: #DFEFFC; border: 5px solid #c5dbec; margin: 10px 0; padding: 20px } 
</style> 
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.4.min.js"></script> 
<script type="text/javascript" src="https://github.com/malsup/form/raw/master/jquery.form.js?v2.43"></script> 
<script type="text/javascript"> 

$(document).ready(function(){ 
    var value = $('#form_friendship *').fieldValue(); 
    $('#form_friendship').submit(function(){ 
     alert(value); 
     return false; 
    }); 
}); 
</script> 
</head> 
<body> 

<form id="form_friendship"> 
    Is <input type='text' name='user_a' value='jack'/> following <input type='text' name='user_b' value='username'/> on Twitter? <input type="submit" value="Check"> 
</form> 
</body></html> 

認爲您的表單ID後提交*搞亂了。 這一行:

$('#form_friendship').submit(function()