2011-09-22 46 views
0

我使用javascript在asp.net中將一些值從一個頁面發送到另一個頁面。我已經在父頁面中聲明JS,並將值發送到子頁面,並使用Request.Querystring在頁面後面的代碼中獲取值。你看我剛纔的問題here在asp.net中將數值從一個頁面發送到另一個頁面時字符被修剪

給你一個詳細的研究,參見下面的例子

chStatusReport.Attributes.Add("onclick", "javascript:return Navigate('" + varTrimmed+ "');"); 

JS打開一個子頁面正在

<script type="text/javascript" language="javascript"> 
     function Navigate(status) { 
     window.open("ChildPage.aspx?status=" + status) 
     return false; 
     } 
    </script> 

代碼獲取從父值傳遞給子頁面。正在傳遞

if (Request.QueryString.Count!=0) 

{ svar1= Request.QueryString["status"]; 
    } 

值是像1)湯姆&彼得2)勞倫斯&哈迪

,我得到的是:1)湯姆2)勞倫斯

爲什麼剩餘的文本被裁切值?

+0

我相信在查詢字符串中有'&'的具體用法,你得編碼它和空格...... URLEncode和URLDecode是你應該看的 – V4Vendetta

回答

2

你實際上傳遞Tom & Peter?即,ChildPage.aspx?status=Tom & Peter

如果你是,那麼查詢字符串將有:

QueryString["Status"] with Tom and QueryString["Peter"]. 

&是在查詢字符串值對之間的delmiter。

您需要URL對URI進行編碼。看看JavaScript encodeURIComponent

相關問題