Yup, that makes sense :-)
Luke
Jörn Zaefferer wrote:
> Luke Lutman schrieb:
>> I was thinking of something a little fancier ;-)
>>
>> jQuery.query = function() {
>> var r = {};
>> var q = location.search;
>> q = q.replace(/^\?/,''); // remove the leading ?
>> q = q.replace(/\&$/,''); // remove the trailing &
>> jQuery.each(q.split('&'), function(){
>> var key = this.split('=')[0];
>> var val = this.split('=')[1];
>> // convert floats
>> if(/^[0-9.]+$/.test(val))
>> val = parseFloat(val);
>> // ingnore empty values
>> if(val)
>> r[key] = val;
>> });
>> return r;
>> };
>>
>> Then you could use it like so:
>>
>> http://www.bork.com?foo=helloworld&bar=0.333&
>>
>> $.query()['foo']; // helloworld (string)
>> $.query()['bar']; // 0.333 (number)
>>
> In that case, you should just assign the result to jQuery.query, eg:
> (function() {
>
> jQuery.query = r = {};
> var q = location.search;
> q = q.replace(/^\?/,''); // remove the leading ?
> q = q.replace(/\&$/,''); // remove the trailing &
> jQuery.each(q.split('&'), function(){
> var key = this.split('=')[0];
> var val = this.split('=')[1];
> // convert floats
> if(/^[0-9.]+$/.test(val))
> val = parseFloat(val);
> // ingnore empty values
> if(val)
> r[key] = val;
> });
>
> })();
>
> Considering that location.search does not change. I hope I'm not
> confusing something.
>
> -- Jörn
>
> _______________________________________________
> jQuery mailing list
> [email protected]
> http://jquery.com/discuss/
--
zinc Roe Design
www.zincroe.com
(647) 477-6016
_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/