, .
:
, . URL- . , , URL-, , , ( , ).
,
- URL- - , , , , .
,
"url" . , , URL- , .
URL-, , , URL-. (, * generate_reports, url = 'queryUrl')
( )
localstorage:
:
var assigned_fields = {
tables_selected: ["user", "cats", "dogs"]
}
var report_url = "http://not-really.com"
window.localStorage.setItem("report_"+report_url, JSON.stringify(assigned_fields))
function getAssignedFieldsFromURL(url) {
return JSON.parse(window.localStorage.getItem("report_"+url))
}
, javascript , :
getAssignedFieldsFromURL("http://not-really.com")
.
, .
javascript GUI . , , .
URL
: URL- Javascript?
, URL-
function getJsonFromUrl(str) {
var query
var pos = str.indexOf("?")
if (pos !== -1)
query = str.substr(pos+1)
else
query = str
var result = {}
query.split("&").forEach(function(part) {
if (!part)
return
part = part.split("+").join(" ")
var eq = part.indexOf("=")
var key = eq>-1 ? part.substr(0,eq) : part
var val = eq>-1 ? decodeURIComponent(part.substr(eq+1)) : ""
var from = key.indexOf("[")
if (from == -1)
result[decodeURIComponent(key)] = val
else {
var to = key.indexOf("]")
var index = decodeURIComponent(key.substring(from+1,to))
key = decodeURIComponent(key.substring(0,from))
if(!result[key]) result[key] = []
if(!index) result[key].push(val)
else result[key][index] = val
}
})
return result
}
:
getJsonFromUrl("http://google.com?test=5&cat=3")
: Object {test: "5", cat: "3" }
:
, . , "+" "" .