2013-02-28 2 views
1

У меня есть этот диапазон на моем веб-сайте с этими значениями.удалите определенную часть строки и добавьте другую в конец

<span>1,4,4,7,5,9,10</span> 

Я хочу использовать JQuery, чтобы удалить "1," (или то, что когда-либо первое число) от начала строки и добавить ",12" в конце (или любое другое число, а не 12), так что это будет выглядеть например:

<span>4,4,7,5,9,10,12</span> 

Как это сделать с помощью jquery или java-скрипта?

+0

Я попробовал split (','); но каждый раз, когда я пробовал, он выбирал случайный «,». –

ответ

2

Вы можете использовать раскол или регулярные выражения с string.replace

Вот как использовать раскол:

var arr = '1,4,4,7,5,9,10'.split(','); 
arr.shift(); 
arr.push('12'); 
var result = arr.join(','); 

Или с регулярные выражения (не очень читаемый один я признаю):

'1,4,4,7,5,9,10'.replace(/^\d+,(.*)$/, '$1,12') 
2
$('span').text(function(i, t) { 
    return t.replace(/\d+,/, '') + ',12'; 
}) 

http://jsfiddle.net/dnkEV/

+0

Мне нравится этот ответ –

+0

Сделать все это в regexp: ''1,4,4,7,5,9,10'.replace (/^\ d +, (. *) $ /,' $ 1,12 ') ' – Greg

1

Использование DOM API, вы можете сделать это:

var tn = span.firstChild; 

tn.deleteData(0, tn.data.indexOf(",") + 1); 
tn.data += ",12"; 

http://jsfiddle.net/KMzau/


Или вот так:

var tn = span.firstChild; 

tn.data = tn.data.slice(tn.data.indexOf(",") + 1) + ",12";