POST メソッドを使用して JavaScript の URL パラメータをどのように抽出しますか?
例: localhost:8080/file.html/a/30/b/40
a と b がキーになり、30 と 40 がそれらのキーの値になります
前もって感謝します!
POST メソッドを使用して JavaScript の URL パラメータをどのように抽出しますか?
例: localhost:8080/file.html/a/30/b/40
a と b がキーになり、30 と 40 がそれらのキーの値になります
前もって感謝します!
GETのことですか?
file.html?a=30&b=40
この URL から、次のようにパラメーターを取得できます。
var param = {};
var s = window.location.search.substring(1).split('&');
for (var i = 0; i < s.length; ++i) {
var parts = s[i].split('=');
param[parts[0]] = parts[1];
}
console.log(param);
あなたが提供した URL は、私が知る限り、POST で何もする必要はありませんが、JavaScript 変数に入れることができれば、これを行うことができます:
var url = "file.html/a/30/b/40";
var param = {};
var parts = url.split("/");
for (var i = 1; i < parts.length; i += 2) {
param[parts[i]] = parts[i+1];
}
console.log(param);
このような正規表現を使用してはどうでしょうか。
var url = document.URL; // get the current URL
var matches = url.match(/.*\/a\/(\d+)\/b\/(\d+)/); // match it with a regex
var a = matches[1]; // the "a" number (as string)
var b = matches[2]; // the "b" number (as string)
このメソッドはリストを返すことに注意してください。そのmatch
最初の要素は、キャプチャされた要素、つまり(\d+)
正規表現パターンの 2 つの部分である残りの項目との全体的な一致です。そのため、このスニペットでは無視してmatches[1]
andを使用しています。matches[2]
matches[0]