在下面的代碼中,當我更改框中的值並單擊「更新」時,jQuery獲取輸入字段的舊值。刷新頁面時(刷新後保留新輸入)並再次單擊「更新」,則使用新值。我究竟做錯了什麼?jQuery獲取輸入字段的舊值
<body>
<script type="text/javascript">
$(document).ready(function() {
var submit_command = function(e) {
$.getJSON($SCRIPT_ROOT + '/__test',
e.data,
function(data) {
$("#result").text(data.test);
});
return false;
};
$('a#update_parameter').bind('click', {
name: "Param",
test: parseFloat($('input:text[name=input_parameter]').val().replace(",", "."))
}, submit_command);
});
</script>
<div class="parameter">
<span class="parameter_name">My Parameter</span>
<input type="text" name="input_parameter" size=3 />
<a href=# id="update_parameter">Update</a>
<span id="result">?</span>
</div>
</body>
注:隨意提出改進意見。
給您的輸入字段像#input_parameter,比$('#input_parameter')。val() – pszaba 2014-10-30 12:06:19
@pszaba:這似乎沒有幫助。我得到相同的結果。只有在Firefox上刷新後纔會更新輸入。 Chrome似乎重置了輸入字段,但服務器日誌顯示它發送NaN(空)事件,儘管盒中有一個數字。 – gurdulilfo 2014-10-30 12:20:17
我知道這不是解決你的問題,但你寫道:「注意:隨意建議改進。」,id總是更好 – pszaba 2014-10-30 12:22:10