我试图使用YouTube数据api来生成视频播放列表。但是,视频网址需要youtube.com/watch?v=3sZOD3xKL0Y格式,但api生成的内容是youtube.com/watch?v=3sZOD3xKL0Y & feature = youtube_gdata。因此,我需要做的是能够选择包含&符号之后的所有内容,并将其从网址中移除。任何方式与JavaScript和某种正则表达式做到这一点?使用javascript或jquery删除url参数
25
A
回答
26
简单:
var new_url = old_url.substring(0, old_url.indexOf('?'));
修改: 这会从URL中删除所有参数或片段
var oldURL = [YOUR_URL_TO_REMOVE_PARAMS]
var index = 0;
var newURL = oldURL;
index = oldURL.indexOf('?');
if(index == -1){
index = oldURL.indexOf('#');
}
if(index != -1){
newURL = oldURL.substring(0, index);
}
15
实施例:http://jsfiddle.net/SjrqF/
var url = 'youtube.com/watch?v=3sZOD3xKL0Y&feature=youtube_gdata';
url = url.slice(0, url.indexOf('&'));
或:
例子:http://jsfiddle.net/SjrqF/1/
var url = 'youtube.com/watch?v=3sZOD3xKL0Y&feature=youtube_gdata';
url = url.split('&')[0];
1
你可以使用正则表达式匹配的v
价值,并建立自己的网址,因为你知道这个网址是youtube.com/watch?v = ...
var url = 'http://youtube.com/watch?v=3sZOD3xKL0Y';
alert(url.match(/v\=([a-z0-9]+)/i));
16
嗯......寻找更好的方式...这里是
var onlyUrl = window.location.href.replace(window.location.search,'');
21
我错过了什么?
为什么不:
url.split('?')[0]
2
//user113716 code is working but i altered as below. it will work if your URL contain "?" mark or not
//replace URL in browser
if(window.location.href.indexOf("?") > -1) {
var newUrl = refineUrl();
window.history.pushState("object or string", "Title", "/"+newUrl);
}
function refineUrl()
{
//get full url
var url = window.location.href;
//get url after/
var value = url = url.slice(0, url.indexOf('?'));
//get the part after before ?
value = value.replace('@System.Web.Configuration.WebConfigurationManager.AppSettings["BaseURL"]','');
return value;
}
0
使用此功能:
var getCleanUrl = function(url) {
return url.replace(/#.*$/, '').replace(/\?.*$/, '');
};
// get rid of hash and params
console.log(getCleanUrl('https://sidanmor.com/?firstname=idan&lastname=mor'));
如果你希望所有的HREF部分,使用:
var url = document.createElement('a');
url.href = 'https://developer.mozilla.org/en-US/search?q=URL#search-results-close-container';
console.log(url.href); // https://developer.mozilla.org/en-US/search?q=URL#search-results-close-container
console.log(url.protocol); // https:
console.log(url.host); // developer.mozilla.org
console.log(url.hostname); // developer.mozilla.org
console.log(url.port); // (blank - https assumes port 443)
console.log(url.pathname); // /en-US/search
console.log(url.search); // ?q=URL
console.log(url.hash); // #search-results-close-container
console.log(url.origin); // https://developer.mozilla.org
0
嗯,我用这:
stripUrl(urlToStrip){
let stripped = urlToStrip.split('?')[0];
stripped = stripped.split('&')[0];
stripped = stripped.split('#')[0];
return stripped;
}
或:
stripUrl(urlToStrip){
return urlToStrip.split('?')[0].split('&')[0].split('#')[0];
}
相关问题
- 1. 使用jQuery或JavaScript从url中删除参数
- 2. 使用PHP或jQuery获取参数的URL参数/ javascript
- 3. JavaScript从URL中删除参数
- 4. 使用Javascript或Jquery删除DIV标签
- 5. 使用swift从URL中删除参数
- 6. Javascript - 删除或设置另一个值到URL参数
- 7. 使用Javascript或PHP获取URL参数?
- 8. jquery从url参数中删除空白或空白值
- 9. 删除与jQuery或JavaScript
- 10. 如何使用javascript或jquery从url中检索参数?
- 11. 从url中删除参数
- 12. PHP:删除URL参数?
- 13. 使用.htaccess代码从一个url中删除url参数
- 14. 使用jquery从URL中删除%20
- 15. 如何使用Javascript/jQuery从url中删除一些文本
- 16. 使用javascript或jquery解析url
- 17. 使用jquery删除数组
- 18. 在jquery或Javascript中删除php会话
- 19. 在JavaScript或JQuery中删除元素
- 20. 从javascript中的URL中删除查询参数
- 21. 的Yii - 生成URL,同时保留或删除GET参数
- 22. 如何删除使用JavaScript或jQuery的CSS和HTML标签
- 23. 使用jquery或javascript删除锚文本的一部分
- 24. 如何使用Javascript或jQuery删除gridview行
- 25. 如何使用jquery或javascript删除索引处的行?
- 26. URL重写,以删除参数
- 27. 添加/删除参数,请求URL
- 28. 删除url中的响应参数
- 29. 删除URL中的旧参数(PHP)
- 30. 从URL中删除参数viac .htaccess
看看这篇文章:http://stackoverflow.com/questions/738351/javascript-url-manipulation-library-api/3215670#3215670 – 2011-09-06 23:21:04
[javascript对象的查询字符串编码]的可能重复(http://stackoverflow.com/question s/1714786/querystring -a-javascript-object的编码) – 2013-11-15 18:19:10