2008-12-21 56 views
0

此代码动态地构造在IE和FF /铬

function LoadContent(Id) { 
     alert('Controls/Network/NetworkDetail.aspx?' + rnd() + '&CtlId=' + Id); 
     $.get('Controls/Network/NetworkDetail.aspx?' + rnd() + '&CtlId=' + Id, function(data) { 
      $(Id).append(data); 
     }); 
     $(Id).removeClass("Waiting"); 
} 

完全在IE7查询字符串的行为。显示预期查询字符串的警报,以及NetworkDetail.aspx页面可以使用Request.QueryString [“CtlId”]获取CtlId。但是,使用FF3和Chrome,Request.QueryString [“CtlId”]返回null,但显示的警报查询字符串正确(与IE7没有区别)。

的ID值通常是 '#TAB1',或 “#TAB2”

如何正确构造的查询字符串的任何想法?

回答

5

#表示HTML中的一个命名锚点,因此不是查询字符串的一部分,也许你应该正确地对你的id进行URL编码。

例如#Tab1变成%35Tab1

尝试使用转义。例如

'Controls/Network/NetworkDetail.aspx?' + rnd()+'& CtlId ='+转义(Id)

+0

你说得对。 '#'弄乱了我的代码。但是,这样的浏览器怪癖正是我讨厌javascript开发的原因。 – Salamander2007 2008-12-21 02:29:06