我想要獲取URL的哈希值,通過函數發送它,將該值轉換爲對象,但最終將值發送給JSON。我有以下設置:使用Javascript變量&發送到JSON
function content(cur){
var mycur = $H(cur);
var pars = "p="+mycur.toJSON();
new Ajax.Updater('my_box', 'test.php', {
parameters: pars
});
}
function update(){
if(window.location.hash.length > 0){
content(window.location.hash.substr(1)); // Everything after the '#'
}
}
var curHashVal = window.location.hash;
window.onload = function(){
setInterval(function(){
if(curHashVal != window.location.hash){
update();
curHashVal = window.location.hash;
}
},1);
}
但由於某種原因,我似乎無法得到正確的JSON輸出。它將作爲非常大的對象返回(1:「{」,2:「k」)或根本不返回。我懷疑這是不可能完成的,但我已經用盡了我能想到的大部分方法。
我試過的其他方法是「{」+ cur +「}」以及cur.toObject(),但是,似乎沒有任何工作完成。
感謝您的幫助!
編輯:作爲最終的結果,我想的URL(比如產品:3,證實:1)將被返回爲{"product":3,"confirmed":1}
爲什麼不手動建立json。 – 2010-03-29 01:03:40
這是爲什麼編寫的庫/框架? – harto 2010-03-29 01:20:47
@詹姆斯布萊克:我試圖讓腳本儘可能靈活,所以沒有我們知道預定義的真實值。 @harto:Prototype – drfranks3 2010-03-29 01:27:45