編碼URL成分似乎是一個非常簡單的問題在這裏:與符號&
我有一個程序,其中有人在表單中輸入字符串M&S
和運行查詢。我知道&
是一個保留字符,因此必須進行編碼。問題是它似乎需要在某些情況下進行兩次編碼。
如果該URL在JavaScript onClick
事件中使用,正常的URL編碼似乎很好地工作(這裏的經營者可以在列標題點擊排序):
<td onClick="AJAX_Get('http://10.0.0.195/program.exe?Qry147=M%26S&sortmethod1=161')">
但是,如果使用URL在錨(雖然錨實際上使用AJAX),它似乎需要編碼兩次:
<a href="javascript:AJAX_Get('http://10.0.0.195/program.exe?Qry147=M%2526S&sortmethod1=147')" title='Refresh'>Refresh</a>
上述兩個示例都正常工作。但是它們是手工生成的測試用例。不幸的是,在應用程序中,當我實際生成URL時,我不知道它將如何使用。
如果我編碼URL參數一次(M%26S
),它在onClick
中正常工作。但是在錨點中使用這種方式時,服務器將URL視爲...Qry147=M&S&sortmethod1=147...
- 因此它必須在返回服務器之前未經過編碼。
如果我編碼兩次(M%2526S
),錨點工作,但對於onClick
,服務器看到...Qry147=M%2526S...
。
我感覺我在這裏錯過了一些東西。在兩種情況下,有沒有辦法讓這項工作相同?
你能舉一個例子說明你實際上如何使用該值嗎? – Gumbo 2010-07-02 15:53:44
對不起,問題顯示不正確。猜猜我需要努力逃避我的意見!堅持一秒鐘我會嘗試編輯它 – asc99c 2010-07-02 15:59:55
查看源代碼...談論主動性不足!:) 現在的問題顯示正確,道歉。 – asc99c 2010-07-02 16:04:49