ted*_*ski 2 javascript c# asp.net popup
我正在升级遗留应用程序,它使用恼人的做法,使用Javascript window.open()打开弹出窗口,以设置值.我在将查询字符串变量传递给该弹出窗口时遇到问题,因为url是在服务器端构建的.
例
JS:
function popupwindow(vLink) {
window.open(vLink, 'Detail','width=600px,height=545px,status=yes,help=no,scrollbars=yes,resizable=yes,top=350');
}
Run Code Online (Sandbox Code Playgroud)
XML
<asp:Label ID="lblOpener" runat="server" Text="_"></asp:Label>
Run Code Online (Sandbox Code Playgroud)
服务器端
int ditem = 123;
string dcode = "ABC";
string vLink = string.Format("detail.aspx?item={0}&code={1}", ditem, dcode);
lblOpener.Attributes.Add("onclick", "popupwindow('" & vLink & "');");
Run Code Online (Sandbox Code Playgroud)
单击标签时,我希望弹出窗口以查询字符串打开:
http://detail.aspx?item=123&code=ABC
相反,我得到这样的东西:
http://detail.aspx?item=123&%3bcode=ABC
我怎样才能防止这种情况发生?
您可以尝试使用JavaScriptSerializer进行编码:
lblOpener.Attributes.Add("onclick", "popupwindow(" & New JavaScriptSerializer().Serialize(vLink) & ");");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
947 次 |
| 最近记录: |