Javascript函数 - 参数长度

时间:2012-05-24 20:45:52

标签: javascript

我从超链接调用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');">

2 个答案:

答案 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键或类似功能,可能不会出现您提到的问题。这也可以让用户看到他们将鼠标悬停在链接上的位置。