2012-05-30 27 views
1

我有一個調用腳本在得到這個信息的功能:解析HTML與JavaScript的GET提交

color = color_class(statistics[0]); 
class = get_class(statistics[0]); 
class = '<font style="color:'+color+';">'+class+'</font>'; 

switch(stage){ 
    case 1: call_file('tut_class.php?choice='+class,'main'); break; 
} 

這看起來是這樣的:

<font style="color:#0d84b6;">Class One</font> 

但在控制檯它如下所示:

tut_class.php?choice=%3Cfont%20style=%22color: //the rest is missing 

所以我不能在PHP腳本中獲取它顯示。有沒有辦法解決這個問題?

+0

嘗試事先將整個字符串設置爲一個變量 – pandavenger

+0

當色彩不會被設置在CSS文件中時,什麼是指向調用span類。 – Sir

+0

@pandavenger沒有修復這個問題:( – Sir

回答

1

你應該把它與urlencode添加到URL之前轉義字符串,並在以後使用urldecode以避免它。

編輯:哎呀,你正在寫javascript。您應該使用javascript的encodeURIComponent來編碼字符串,而不是PHP的urlencode。

2

'class'是保留變量名嗎?我想改變,要別的東西......

編輯:對不起,apparently這是唯一真正實現與ECMAScript,JavaScript不

+0

真的= /奇怪它的作品,當我使用它的警報... – Sir

+0

它可能,但它不會適用於所有的訪問者IIRC,MSIE拋出一​​個錯誤時它遇到名爲'class'的變量,MDN有[保留關鍵字列表](https://developer.mozilla.org/en/JavaScript/Reference/Reserved_Words) – Steve

+0

另外,我認爲它看起來像冒號是問題。 一世通常用於將主機名與端口號分開,以及與認證相關的其他方法。你有沒有試過用%3A逃脫冒號? –