JavaScript替换问题并返回undefined

时间:2017-05-18 18:26:00

标签: javascript jquery

我正在尝试替换简单文本[debit]但它返回undefined。 任何猜测。

var totalDebit = 0;    
$("input[name$='[debit]']").each(function() {

  if ($(this).attr('name') && $(this).attr('name').match(/items\[\d+\]\[debit\]/)) {
        // var exchange_rate =  $("input[name='items["+i+"][exchange_rate]']").val(); // get exchange_rate
        var name = $(this).attr('name');
        alert( name );

        var res = name.replace("[debit]");


        console.log( res );
        alert( res );
        totalDebit += $(this).val() ? parseInt($(this).val()) : 0;
  }
});

2 个答案:

答案 0 :(得分:0)

replace函数接受第二个参数。在这种情况下,您没有传递第二个参数来替换,因此'[debit]'被替换为undefined。

答案 1 :(得分:0)

replace()需要第二个参数-这是新值。对于您而言,我会这样做:

name.replace("[debit]","")

这应该可以解决您不希望看到的undefined