2011-04-13 15 views
2

span 요소 다음에 번호 부분 만 추출하려면 어떻게합니까?jquery가있는 li 내의 문자열에서 숫자 추출

<ul class="info"> 
<li class="name"><span class="textLabel">Name: </span>further (22)</li> 
<li>more stuff</li> 
<li>more stuff</li> 
</ul> 

나는 .contents()를 사용하여 <li>의 전체 텍스트를 얻을 수 있습니다,하지만 난 단순히 .contents()[1]를 사용하고 further (22)을받을 수 있나요 스팬 값을 필요 없어요 때문이다. 그것의 여기에서 나는 문제가있다 - 같이 .match(/\((\d+)\)/를 사용할 때 나는 과실을 얻는 것을 계속한다.

+0

나는'는 .text()를'시도 않았지만, 너무 때문에 다른 최대 뭔가를 엉망해야합니다 : 여기

var num = $('li.name').text().split('(')[1].split(')')[0]; 
Kim

답변

0
/*stuff you do to get your element*/.text().match(/\((\d+)\)/); 

Contents은 요소, 텍스트 노드 및 주석 노드를 반환합니다. 텍스트 콘텐츠 만 필요하므로 text()을 사용해야합니다.

$(document).ready(function(){ 
    alert(parseInt($('li.name').text().replace(/[^0-9\.]/g, ''))); 
}); 
0

시도 : 고정 된 길이 만 들어

my_str = mystr.slice(-3,-2); 

. 또는 :

var my_array=my_input.split("("); 
var my_out = my_array[1].slice(1,-1); //Trim final character 
0

시도 :

$('li').text().match(...) 

오류 당신이 DOM 노드가 아닌 문자열에 정규식을 실행하기 위해 노력하고 있다는 사실이다.

0
정확히 그 작업을 수행하는 jsfiddle입니다 그것은 일을 더 일찍 끝내지 않았다 - 지금 일한다.