2017-03-28 68 views
0

我的JavaScript代码是这样的:跨度自动显示格式货币?

var format = function(num){ 
    var str = num.toString().replace("$", ""), parts = false, output = [], i = 1, formatted = null; 
    if(str.indexOf(",") > 0) { 
     parts = str.split(","); 
     str = parts[0]; 
    } 
    str = str.split("").reverse(); 
    for(var j = 0, len = str.length; j < len; j++) { 
     if(str[j] != ".") { 
      output.push(str[j]); 
      if(i%3 == 0 && j < (len - 1)) { 
       output.push("."); 
      } 
      i++; 
     } 
    } 
    formatted = output.reverse().join(""); 
    return(formatted + ((parts) ? "," + parts[1].substr(0, 2) : "")); 
}; 
$(function(){ 
    $("#currency_one").keyup(function(e){ 
     $(this).val(format($(this).val())); 
    }); 
}); 

我完整的代码和演示是这样的:http://jsfiddle.net/oscar11/s6rCN/544/

我要显示这样的:

enter image description here

ID命名currency_one(文本框第一个),它的工作原理

id named currency_two(textfield second),这是行不通的

我仍然困惑的跨度标签自动显示它或标记像上面

图像是否有任何人谁可以帮我?

回答

1

您没有在第二个元素上调用“keyup”函数。

你的意思是这样的吗?

$("#currency_two").keyup(function(e){ 
    $(this).next('span').text(format($(this).val())); 
}); 

http://jsfiddle.net/s6rCN/552/