我有簡單的 code來增加和減少字段。一切都很好,但我不知道有多少領域(它是由mvc生成的)我的問題是如何智能綁定頁面上每個字段的兩個按鈕? 我試過使用$(this.id+"x").val(currentVal - 1)
,但我認爲這是錯誤的。jquery動態生成字段的增量和減量
感謝您的任何建議
附加:
- 我不能使用jQuery Mobile的範圍內輸入。
- 文本框「文本引腳#4」必須總是聚焦。
- 所有按鈕都必須可以點擊移動設備。
我有簡單的 code來增加和減少字段。一切都很好,但我不知道有多少領域(它是由mvc生成的)我的問題是如何智能綁定頁面上每個字段的兩個按鈕? 我試過使用$(this.id+"x").val(currentVal - 1)
,但我認爲這是錯誤的。jquery動態生成字段的增量和減量
感謝您的任何建議
附加:
您可以選擇相對於已觸發其上的事件的一個元素代替:
$(".bplus").click(function() {
//find the input relative to this element
$(this).closest('td').prev().children('input').val(function (i, oldValue) {
//make sure the old value is being interpreted as an integer
oldValue = parseInt(oldValue, 10);
//if the old value is a valid integer below 999 then add one,
//otherwise return 999
return (oldValue != NaN && oldValue < 999) ? (oldValue + 1) : 999;
});
});
$(".bminus").click(function() {
//find the input relative to this element
$(this).closest('td').next().children('input').val(function (i, oldValue) {
//make sure the old value is being interpreted as an integer
oldValue = parseInt(oldValue, 10);
//if the old value is a valid integer above 0 then subtract one,
//otherwise return 0
return (oldValue != NaN && oldValue > 0) ? (oldValue - 1) : 0;
});
});
這裏是一個演示:http://jsfiddle.net/uSzr7/16/
這裏是一些文件爲亞:
.closest()
:http://api.jquery.com/closest.prev()
:http://api.jquery.com/prev.children()
:http://api.jquery.com/children.val()
:http://api.jquery.com/val(見節上傳遞.val()
函數)另一種方式來處理驗證總是添加或減去一個但添加一個change
事件處理程序與input
元素進行檢查以確保該值有效。由於您使用的是type="number"
輸入標籤,這有助於使用原生窗體控件。
$(".bplus").click(function(){
var txtField = $(this).parents('tr').find('input[type="number"]')
var currentVal = parseInt(txt.val());
if (currentVal < 999)
txtField.val((currentVal || 0) + 1);
});
我把(currentVal || 0)
,這意味着如果currentVal==NaN
,它將被0
螢火錯誤: '輸入沒有被定義 誤差源極線: 變種txtField = $(本)。家長( 'TR')找到(輸入[類型= 「號碼」])' – maksim09 2012-04-23 18:11:09
抱歉,缺少引號,我更正 – Tronix117 2012-04-23 19:40:57
請檢查此鏈接 http://magentocodes.blogspot.in/2013/11/simple-jquery-increment-decrement-on.html – 2014-04-14 10:13:05