将属性与变量进行比较

问题描述:

我正在为工作创建订单表单,您可以使用javascript添加和删除行。我遇到的问题是在删除最近一行后,我无法添加新行。将属性与变量进行比较

我有一个名为rid的变量,每增加一行就会增加一个变量。我需要检查要删除的行对rid,如果他们是相同的,那么它需要降低摆脱1。我认为问题是属性和变量是不同类型的字符串。使用$('#tr'+rid).after()

$('div.remove').live("click", function(){ 
     id = $(this).attr('id').replace(/r/, ''); 
      if(id === rid){ 
       rid = rid-1; 
       alert(rid); 
      } 
      $('#tr'+id).remove(); 
}); 
+0

你说你有问题,你不能添加一个新行,但只发布删除行的代码。很难建议修理未显示的东西! – SpaceBison 2012-02-20 13:52:53

+0

你能发布你的html吗?看起来像应该有一个更简单的方法来做到这一点。另外,你有一个变量'rid',它在你发布的代码中从未被定义过。这是什么,它来自哪里? – mrtsherman 2012-02-20 13:52:55

+0

尝试解析两个变量的结果,然后比较 – 2012-02-20 13:56:07

添加新行,你应该投$(this).attr('id').replace(/r/, '')为int值:

var id = parseInt($(this).attr('id').replace(/r/, ''), 10); 

应该工作

+0

完美的谢谢! – jonners99 2012-02-20 14:04:20

+1

不要忘记将基数作为第二个参数传递给'parseInt',否则您会怀疑以'0开始的字符串的结果。更简单的方法是使用一元'+'。 – 2012-02-20 14:24:36

+0

你是对的菲利克斯。我没有提到它,因为我看到行ID必须由jonner控制,但是很好 – 2012-02-20 14:37:27