2016-05-22 12 views

答えて

1

var str = 'example.com/sfm?dir=uploads/sfm/root/folder1/subfolder1'; 
 
var part = str.split('=')[1]; 
 
console.log(part);

0

あなたはそれを得るために.split()を使用することができますが、第二部に=で文字列を分割して取得するためにsplitを使用することができます。

Working Example

var url = "example.com/sfm?dir=uploads/sfm/root/folder1/subfolder1"; 

var s = url.split('=')[1]; 
0

あなたは(.split()を使用して)これを試すことができます:あなたはregexpを作成する必要が

getFilePath("example.com/sfm?dir=uploads/sfm/root/folder1/subfolder1")

0

function getFilePath(fullPath){ 
    return fullPath.split("dir=")[1]; 
} 

今、次のようにそれを呼び出します。 dirの後にさらに多くのパラメータがある場合、正規表現はより複雑になります。

var url = 'example.com/sfm?dir=uploads/sfm/root/folder1/subfolder1'; 
 
var regexp = /dir=([\w\W]*)/; 
 
var matched = url.match(regexp); 
 

 
document.body.innerHTML = matched[1];

+0

これは問題ありません。しかし、今私はまた、JavaScriptのURL文字列を最初に読む必要があります。どうやってやるの? –

+0

window.location.href – sielakos

+0

を使用してください。私はすでにそれを持っています。今すぐもう1つの質問:私はPHP変数に結果をバインドします。どうやってやるの? –

2

あなたは(MDNから取られた)、これを試してください:

var getQueryVarByName = function (name) 
{ 
    name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); 
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"), 
     results = regex.exec(location.search); 
    return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " ")); 
}; 

用途:疑問符?window.location.searchとして知られた後

var param = getQueryVarByName('dir'); // uploads/sfm/root/folder1/subfolder1 
0

一部を。このクエリー文字列には1つのパラメータがある可能性があります。安全な解決方法は次のようにする必要があります。

//example.com/sfm?dir=uploads/sfm/root/folder1/subfolder1&un=test&time=1234 
function getPath(){ 
var query=window.location.search //?dir=uploads/sfm/root/folder1/subfolder1&un=test&time=1234 
    .replace(/^\?/,'') //dir=uploads/sfm/root/folder1/subfolder1&un=test&time=1234 
    .split('&'); //[dir=uploads/sfm/root/folder1/subfolder1, un=test, time=1234] 
for(var i = 0, n = query.length;i < n;i++){ 
    var qs = query[i].split('='); 
    if(qs.length == 2 && qs[0] == 'dir') 
     return qs[1]; //if found 
}//for 
return null; // not found 
} 
関連する問題