2011-11-04 2 views
2

를 .html 중에서 제거 나는 다음과 같은 jQuery를 가지고 :jQuery를이 ATTR href가 얻을

$('.aboutUs a').live('click', function(e){ 
    e.preventDefault(); 

    var clickedElement = $(this).attr('href'); 
}); 

나는 결과를 CONSOLE.LOG 경우 내가 page.html을 얻을 것이다. 내가하고 싶은 것은 .html을 제거하는 방법이지만 확실하지는 않습니다. 누구든지 도와 줄 수 있습니까? 많은 감사합니다.

답변

6

당신은 단지 replace 아무것도 가진 .html 수 : 당신의 문자열이 잠재적으로 ".html 중에서"다음 정규식 대답이 때문에이 경우에, 더 나은의 다른 인스턴스를 포함 할 수 있다면

var clickedElement = $(this).attr("href").replace(".html", ""); 

이 제거됩니다 첫 번째 사건은 마지막 사건보다. 그러나 그 경우가 아니라면 (그리고 아주 희박한 것 같습니다) 그러면 정상적으로 작동합니다.

+0

드문 경우이지만 href의 다른 위치에서 '.html'이 제거 될 수 있습니다. –

+1

@ a'r - 그래, 그 주석을 게시하기 직전에 편집했습니다. 문자열에 여러 개의 .html 하위 문자열이 포함되어있을 가능성이있는 경우 내 예제에서는 첫 번째 문자열 만 제거합니다. –

3

문자열 끝에 .html을 제거하기 위해 정규식을 사용할 수 있습니다.

"page.html".replace(/.html$/,'')