我从超链接调用javascript函数,如下所示。
<a href="javascript:redirect('param1','param2','http://google.com');">Do this</a>
在这种情况下,redirect()函数按预期调用,并重定向到第三个参数中的url。但是如果url参数很大(比如说> 200个字符),javascript函数永远不会被调用。参数长度有限制吗?我确实需要URL那么大,因为我传递的加密参数很少,而且它们很大......
--------- ----------编辑
这是一个冗长的URL参数
的例子<a href="javascript:redirect('A-0', '07', 'http://localhost:9083/xxxxx/aaa/bbbb/ccccc/redirectApply.do?token=9BsPtrGQPEYWv6dvbP9hsX9skeghTHnonkKZtsqrkZXSf7gKqKRYdo2i6CpcLOWxroqrWEDhyosk%0D%0A1aD1tQ0OBHHfsVjPKb%2B1kSFzjCg8lKyoGropGWc%2Bc7oCT8%2BYItwX');">
答案 0 :(得分:0)
您可以动态地附加jref属性,而不是在href属性中嵌入javascript。
例如:
<a id="example_link">Do this</a>
然后:
document.getElementById('example_link').onclick = function(){
redirect('param1','param2','http://google.com');
return false;
};
如果你正在使用像jQuery这样的JavaScript库,或者你有更好的方法来识别锚点而不是ID,那么就有更好的解决方案。
答案 1 :(得分:0)
我会动态更改标签的href,而不是使用javascript:redirect。这允许浏览器使用“在新选项卡中打开链接”,按住Ctrl键或类似功能,可能不会出现您提到的问题。这也可以让用户看到他们将鼠标悬停在链接上的位置。