繁体   English   中英

单元格中的增量数 - JavaScript - jQuery

[英]Increment number in a cell - JavaScript - jQuery

我在jQuery中使用JavaScript。 我有以下内容

var $ticket = $nxt.parent().prev().children('.ticket');

$ticket.text()是整数1。

当我点击时,我想将它增加1;

$('.next').click(function()

我怎样才能做到这一点??

一个奇特的解决方案是

$.fn.extend({
  increment: function () {
    return this.text( function (i, currentText) {
      return parseInt(currentText, 10) + 1;
    });
  }
});

在您的情况下用作:

$nxt.parent().prev().children('.ticket').increment();

也看到这个jsFiddle

有点受到Tomalak答案原始版本的启发,您可以使用基于回调的.text版本来更改单个jQuery调用中的值:

$ticket.text(function(i, t) {
    return parseInt(t, 10) + 1;
});

对于那些试图使用++ ,它不会有两个原因:

  1. 您只能对变量使用++ ,而不能使用函数的返回值
  2. 即使这样,在后缀模式下它也会返回值,而不是递增值
$ticket.click(function(e) { 
    $(this).val(parseInt($(this).val()) + 1); 
    e.preventDefault(); 
});

试试这个

 $ticket.val($ticket.val()+1)   

编辑

$ticket.text(parseInt($ticket.text(),10)+1);

如果元素是表单以外的其他位置

抱歉错误, ++在这里不起作用。 已相应编辑了解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM