如何自定义html数组元素的下标?

wildlily980 2012-07-02 12:58:19

请看代码
<form name='form'>
<input type='text' name='a[11]'>
<input type='text' name='a[22]'>
</form>
请教有没有办法简单获取它们的集合?
试了form.a及form.a[]都不成功
getElementsByName也不行。
如果把下标11,22去掉是可以的,但是我需要下标做为变量名称传递过去。
...全文
219 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wildlily980 2012-07-02
  • 打赏
  • 举报
回复
是的,你猜对了,主要是给php用,
php要求变量名称必须是——如果是数组的话——name[]形式的,如果去掉了[]那么只能得到一个元素。
不管咋样,我在你的方案的基础上做了一下调整,算是过了这关,不那么优雅。
多谢。
孟子E章 2012-07-02
  • 打赏
  • 举报
回复
或者
<input type='text' name='a[22]'>
都改成
<input type='text' name='a'>

document.getElementsByName("a")
孟子E章 2012-07-02
  • 打赏
  • 举报
回复
不知道你起这样的名称是为什么a[22]??应该是php中的吧,php才有这样的怪名字。

简化的方法是放在一个div或者span里面

document.getElementById("spanID").getElementsByTagName("input")去查找
wildlily980 2012-07-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

或者

for(i=0;i<document.getElementsByTagName("input").length;i++)
{
alert(document.getElementsByTagName("input")[i].name)
}
[/Quote]
感谢你的回复,这个办法比较复杂,但也是唯一能想到的办法了。
问题是,input 有很多,我只需要其中一些。那有什么办法简单过滤一下,加个 class,然后用class name判断?
或者有更简单的?
孟子E章 2012-07-02
  • 打赏
  • 举报
回复
或者

for(i=0;i<document.getElementsByTagName("input").length;i++)
{
alert(document.getElementsByTagName("input")[i].name)
}
孟子E章 2012-07-02
  • 打赏
  • 举报
回复
名称是一个完整的字符串,不能按下标处理。

你可以
for(i=0;i<document.form.elements.length;i++)
{
alert(document.form.elements[i].name)
}

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧