2012-10-14 2 views
2

안녕하세요. 우선 이미 살펴 봤지만 원하는 일과 일치하는 것이 아무것도 없으므로 누구나이 문제를 도와 줄 수 있는지 묻고 있습니다.jquery는 URL의 마지막 매개 변수를 찾아서 바꿉니다.

URL이 "/ view/album/4/photo/1" 이고 마지막 매개 변수를 제거하고 무언가로 바꾸고 싶습니다. 내가하고 싶은 것은 마지막 "/"을 찾아 그 뒤에있는 숫자를 제거하고 새로운 값으로 바꾸는 것입니다.

PHP로는 쉽지만 jquery에서 배우기 시작한 이래로 어떻게해야할지 모르겠다. 그래서 도움을 줄 수있는 사람은 정말로 고맙습니다. ;

액션 = $ (양식) .attr ('액션') : :) 그런데

이 URL을 얻기에 내 코드입니다 // "/보기/앨범/4/사진/1"

내가 마지막 PARAM

답변

5

:)http://jsfiddle.net/hE6MC/

또는http://jsfiddle.net/YwG6b/

API를 시도 제공 대한 :)http://w3fools.com

코드

url = "/view/album/4/photo/1" 
var value = url.substring(url.lastIndexOf('/') + 1); 

alert(value); 

url = url.replace(value, 'hulk') 
alert("new url => " + url);​ 

당신은 단지 당신이 slice 방법을 사용할 수 있습니다 마지막 문자를 대체하고자 할 경우 또 다른 방법

var str = '/view/album/4/photo/1'; 
var i = str.lastIndexOf('/'); 
if (i != -1) { 
    str = str.substr(0, i) + "/new stuff"; 
} 

alert(str); 
​ 
+0

Meh! 함정이 난다. 'url = "/ view/album/4/photo/4"'이라면? ':)' – Prasanth

+0

@ gold_parrot 고맙습니다! 다른 방법 : http://jsfiddle.net/YwG6b/':)' –

+0

굉장해! 고마워. 데모와 함께 매우 도움이된다. 고마워, 무리 :) – user949000

3
var paths = location.pathname.split('/'); 
paths[ paths.length-1 ] = 'foo'; // new value 
location.pathname = paths.join('/'); 
+1

+1 남자 !! 정말로! ':)' –

1

쉽고 간단한의 값을 변경하기 위해 변수를 어떻게 해야할지하지 않습니다 정규 표현식. 나는에게 BTW http://www.w3schools.com/jsref/jsref_lastindexof.asp

:

action = (action.match(/(.*)\d+$/) == null) ? action : (action.match(/(.*)\d+$/)[1]+"2"); 

/view/album/4/photo/2 
+0

+1 남자도! ':)' –

+0

정말 고마워요! 이것은 매우 흥미 롭습니다 :) – user949000

1

에게 KNW.

$('form').attr('action', function(i, a){ 
    a.slice(0, -1) + 'number' 
}) 
관련 문제