2014-02-10 102 views
2

我必須輸入字段:jQuery的VAL()不更新輸入字段

<input class="form-control" id="Page" min="1" name="Page" type="number" value="1"> 

,並與jQuery我試着按下按鈕後改變值。 這裏是我的代碼:

$(document).ready(function() { 
    $("#Right").on("click", function() { 
     var page = $("#Page").val(); 
     page = page++; 
     $("#Page").val(page); 
}) 

我可以讀取值。 增加它。 但是,當我試圖將其保存到他輸入字段值時,它保持舊值。

我也試圖解析它爲int這樣的:

var value= parseInt(page); 
value = value++; 
$("#Page").val(value); 

而這也給了沒有效果。

你能提出一些建議嗎?

回答

6

嘗試只需使用page++;

$(document).ready(function() { 
    $("#Right").on("click", function() { 
     var page = parseInt($("#Page").val()); 
     page++; 
     $("#Page").val(page); 
    }); 
}); 

Fiddle Demo

value++被稱爲後綴,加1到返回舊value.Hence的value值將永遠是1

+2

謝謝。多麼可恥的錯誤:( – szpic

2

使用parseInt()將該值轉換爲整數,然後應用增量。同時採用value = value++;

$(document).ready(function() { 
$("#Right").on("click", function() { 
    var page = parseInt($("#Page").val()); 
    page++; 
    $("#Page").val(page); 
}) 
+2

您可以編輯您的答案'page = page ++'不起作用 – szpic

4

問題是,值=值++不會總結,而是使用值++。

var value = parseInt(page); 
value++; 
$("#Page").val(value); 
+1

請分享downvote的原因。 –