是否有一种无插件的方式通过jQuery(或没有)检索查询字符串值?
如果是这样,怎么样?如果没有,是否有插件可以这样做?
我需要从URL创建一个Javascript数组,例如:
转过来:
http://maps.google.com/maps/api/staticmap?center=Baker Street 221b, London&size=450x450&markers=Baker Street 221b, London&sensor=false
Run Code Online (Sandbox Code Playgroud)
变成这样的东西:
array['center'] = Baker Street 221b, London
array['size'] = 450x450
// and so on...
Run Code Online (Sandbox Code Playgroud)
我需要使这个序列化/反序列化双向工作(url到数组和数组到url的部分).是否有一些内置函数可以做到这一点?
提前致谢!
如果有一件事我无法理解,那就是正则表达式.
经过大量的搜索,我终于找到了适合我需求的产品:
function get_domain_name()
{
aaaa="http://www.somesite.se/blah/sdgsdgsdgs";
//aaaa="http://somesite.se/blah/sese";
domain_name_parts = aaaa.match(/:\/\/(.[^/]+)/)[1].split('.');
if(domain_name_parts.length >= 3){
domain_name_parts[0] = '';
}
var domain = domain_name_parts.join('.');
if(domain.indexOf('.') == 0)
alert("1"+ domain.substr(1));
else
alert("2"+ domain);
}
Run Code Online (Sandbox Code Playgroud)
它基本上给了我回域名,反正我还能得到域名之后的所有东西吗?在这种情况下,它将/blah/sdgsdgsdgs来自aaaa变量.
我正在使用Backbone.js和jQuery-mobile.jQuery-mobile routing被禁用,我只使用lib进行UI.除了选择页面转换外,我完成了所有工作.我需要将页面转换('slice-up','fade','slide-down')传递给Backbone路由器,因为转换是根据用户来自何处而变化的.
我已经想出了一个非常难看的方法,通过url传递它们:
class App.Routers.Foods extends Backbone.Router
routes:
'': 'index'
':transition': 'index'
'foods/new': 'new'
'foods/new/:transition': 'new'
initialize: ->
@collection = new App.Collections.Foods()
@collection.fetch()
index: (transition)->
view = new App.Views.FoodIndex(collection: @collection)
App.changePage(view, transition)
new: (transition)->
view = new App.Views.FoodNew(collection: @collection)
App.changePage(view, transition)
Run Code Online (Sandbox Code Playgroud)
这是默认转换的html链接:
<a href="#" data-icon="back" class="ui-btn-left">Back</a>
Run Code Online (Sandbox Code Playgroud)
这是淡入淡出过渡的html链接:
<a href="#fade" data-icon="back" class="ui-btn-left">Back</a>
Run Code Online (Sandbox Code Playgroud)
使用查询字符串,即/ food/new?transition ='fade'肯定更好,但我不知道如何定义骨干路由以使用查询字符串变量.
我该怎么做?
是否有一种更优雅的方式来处理我的问题,即传递变量而不使用url?
我需要在大量的文本中找到=和&符号之间的所有字符串.我不希望结果字符串包含=和&,只是它们之间是什么.
我需要使用参数作为字符串检索整个URL.例如,我需要检索以下URL:
http://www.keytometals.com/page.aspx?ID=CheckArticle&site=kts&LN=EN&NM=349
Run Code Online (Sandbox Code Playgroud)
我试过用:
document.location.href,
document.URL,
window.location.href
Run Code Online (Sandbox Code Playgroud)
但它只检索URL的一部分:
http://www.keytometals.com/page.aspx
Run Code Online (Sandbox Code Playgroud)
如何获取包含当前URL及其参数的字符串?
一个更新:我用过
window.content.document.location.href
Run Code Online (Sandbox Code Playgroud)
我有以下网址:
http://www.keytometals.com/page.aspx?ID=CheckArticle
Run Code Online (Sandbox Code Playgroud)
不幸的是,它仍然是URL的一部分.有人可以帮助我如何将整个URL作为字符串?
谢谢!
如何在javascript上解析此字符串,
var string = "http://www.facebook.com/photo.php?fbid=322916384419110&set=a.265956512115091.68575.100001022542275&type=1";
我只是想在字符串上得到" 265956512115091 ".我以某种方式解析了这个字符串,但仍然不足以得到我想要的东西.
我的代码:
var newstring = string.match(/set=[^ ]+/)[0];
Run Code Online (Sandbox Code Playgroud)
收益:
a.265956512115091.68575.100001022542275&type=1
Run Code Online (Sandbox Code Playgroud) 给定此查询字符串:
?cgan=1&product_cats=mens-jeans,shirts&product_tags=fall,classic-style&attr_color=charcoal,brown&attr_size=large,x-small&cnep=0
Run Code Online (Sandbox Code Playgroud)
如何从仅'product_cat, product_tag, attr_color, attr_size'返回的这些参数类型中提取值'mens-jeans,shirts,fall,classic-style,charcoal,brown,large,x-small?
我尝试将非捕获组用于param类型并仅为值捕获组,但它返回两者.
(?:product_cats=|product_tags=|attr\w+=)(\w|,|-)+
Run Code Online (Sandbox Code Playgroud) 是否有一种简单的(甚至是单一且简单的命令)方法来构建一个哈希表(关联数组,JSON - 无论如何)来自包含键值对的字符串,由给定的分隔符分隔.
示例:
n1=v1&n2=v2&n3=v3(在哪里&是分隔符)应该返回:[{n1:v1}, {n2:v2}, {n3:v3}]
例2:
n1=v1;n2=v2;n3=v3(哪里;是分隔符)
谢谢!
我知道有各种库或方法可以从查询字符串中获取数据。但是,我正在尝试学习 javascript,所以决定自己编写,如下所示:
function parseQueryString() {
var qs = window.location.href.split('?')[1];
var item = qs.split('&');
var data = {};
for (var i=0; i < item.length; i++) {
key = item[i].split('=')[0];
value = item[i].split('=')[1];
data[key] = value;
}
return data;
}
Run Code Online (Sandbox Code Playgroud)
以上看起来是不是缺少什么,或者有什么不足之处?如果是这样,我该如何改进它?
javascript ×9
regex ×3
query-string ×2
url ×2
backbone.js ×1
jquery ×1
parsing ×1
plugins ×1
string ×1
text-parsing ×1
url-routing ×1