我有一个$ 295.52的字符串 我想分开它并最终得到以下结论:
<span>$</span>295.<span>52</span>
我尝试在逗号之后成功分割数字,但现在我无法控制第一个字符。这是我的代码:
$('.slprice').each(function () {
var text = $(this).text().split('.');
for (var i = 0, len = text.length; i < len; i++) {
text[i] = '<span class="pricefix-' + i + '">' + text[i] + '</span>';
}
$(this).html(text.join(''));
});
答案 0 :(得分:2)
您可以使用正则表达式,设置组以匹配您要分割为span
元素的部分。像这样:
var $container = $('#foo');
var re = /(\$)(\d+\.)(\d+)/;
$('.slprice').each(function () {
var matches = $(this).text().match(re);
$(this).html('<span>' + matches[1] + '</span>' + matches[2] + '<span>' + matches[1] + '</span>');
});
答案 1 :(得分:0)
function formatString(x)
{
y = x.split(".");
return "<span>"+y[0][0]+"</span>"+y[0].substr(1, y[0].length-1)+"<span>"+y[1]+"</span>";
}
并像
一样使用它$('.slprice').each(function () {
var text = $(this).text().split('.');
$(this).html(formatString(text));
});
工作Fiddle
答案 2 :(得分:0)
我会这样做: FIDDLE
$('.slprice').each(function () {
var text = $(this).text().split('.')
var dollar_sign = text[0].substr(0, 1);
var cents = text[1];
var int = text[0].substr(1, 3);
alert(dollar_sign);
alert(cents);
alert(int);
//your other code
});