网络编程 
首页 > 网络编程 > 浏览文章

js的参数有长度限制吗?发现不能超过2083个字符

(编辑:jimmy 日期: 2025/9/18 浏览:3 次 )
一个普通的javascrip函数,只有一个入口参数
复制代码 代码如下:
function test(info)
<img none';="" document.getelementbyid('_20_37_open_text').style.display="none" ;="" document.getelementbyid('_20_37_closed_image').style.display="inline" document.getelementbyid('_20_37_closed_text').style.display="inline" ;"="" alt="" src="/UploadFiles/2021-04-02/ExpandedBlockStart.gif">alert(info);
}

页面用是aspx代码生成,调用test函数的入口参数可能是一个很长的字符串,同时页面上根据一个数据集构造很多如下所示的标签。
复制代码 代码如下:
<a href="javascript:test('ssssss...这里很长..ssssss')">test</a>

页面生成后有些链接可以点,有些不能点。用substring大致对入口参数的值处理了一下,发现不能超过2083个字符。难道js的函数参数有长度限制?从来没有听说过。也没有查到相关的说法。

试着把<a>标签,换为<button>然后再clik事件里调用这个js函数,参数传了全部的长度,发现没有错误了...

这下顿悟,原来是<a href>惹的祸,<a href>是使用get传递参数,url无论如何都有2k的长度限制。即便是在这种情况下掉js函数也不能超过。
上一篇:jquery的trigger和triggerHandler的区别示例介绍
下一篇:给html超链接设置事件不使用href来完成跳
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap