2016-06-21 5 views
0

Ich habe die folgende URL:Wie Abfrage String Wert nach erhalten? Anmelden Javascript


https://localhost:44300/products/[email protected]

Was ich brauche ist es, den Wert der E-Mail aus der URL in eine Variable zu bekommen und es dann in einem jQuery-Code verwenden:

var email= "getthequerystringhere"

+1

http://stackoverflow.com/questions/19491336/get-url-parameter-jquery-or-how-to-get-query-string-values-in-js – Atticweb

+3

http: // Stackoverflow. com/questions/901115/how-can-i-get-abfrage-string-values-in-javascript – Parwej

Antwort

3

window.location.search enthält eine Abfragezeichenfolge in der URL der aktuellen Seite. Sie können die ? am Anfang abstreifen den Teil, den Sie wollen zu bekommen:

var queryString = window.location.search.replace(/^\?/, ''); 

Wenn Sie bereits die URL in einem String haben, können Sie es auf dem ? aufgeteilt:

var queryString = url.split('?', 2)[1] || ''; 

Sobald Sie haben den Query-String, können Sie es auf & aufgeteilt und dann auf = die bestimmte Parameter bekommen Sie suchen:

var url = 'https://localhost:44300/products/[email protected]'; 
 
var queryString = url.split('?', 2)[1] || ''; 
 
// split query string into key/value pairs 
 
var parameters = queryString 
 
    .split('&') 
 
    .map(function(param) { 
 
    var pair = param.split('=', 2); 
 

 
    return { 
 
     name: decodeURIComponent(pair[0]), 
 
     value: decodeURIComponent(pair[1] || '') 
 
    }; 
 
    }); 
 

 
// get the parameter with name "email" if it exists 
 
var emailParam = parameters.filter(function(param) { 
 
    return param.name === 'email'; 
 
})[0]; 
 

 
var email = emailParam ? emailParam.value : null; 
 

 
console.log(email);

+0

location.search ist das beste, weil es den Abschnitt der URL vor dem'? 'ignoriert und auch das Hash-Fragment, das den GET-Parametern folgt (der Teil der URL nach '#' wenn es vorhanden ist, so können Sie einfach location.search und Split mit dem Zeichen & erhalten, und Sie erhalten alle GET-Parameter. – mastazi

+0

queryString-Variable enthält 'email = abc @ gmail.com' Ich möchte nur [email protected] in Variable –

+0

@AhmedJalal Bitte sehen Sie meine aktualisierte Antwort. – JLRishe

0

Sie können es wie folgt tun:

var url = "https://localhost:44300/products/[email protected]"; 
var email = url.split("?email=")[1]; 
+0

'url.split ("? ") [1] .split ('=') [1];' – Jai

+0

' url.split ("=") [1]; ' – TrojanMorse