form的name属性是用以发给后端进行识别的,所以在前端是可以相同的。(不过严格的来说,除非特别特殊的需求,否则出现相同name的form肯定是结构设计的不合理)
如果name相同的话,你使用documentforms['name']返回的会是一个Element Array
所以应当通过
documentforms['name'][0] // 第一个documentforms['name'][1] // 第二个
来访问具体的form
他们的顺序是元素在HTML文档中出现的顺序决定的
var a = [];
$("input[name^='test']")each(function(i, o){
a[i] = $(o)val();
// apush($(o)val());
// 两种写法选一个就好
});
1、js 一共有三种创建方法:1)使用内置对象。2)使用JSON符号。3)自定义对象构造 。
2、JavaScript可用的内置对象可分为两种: 1)JavaScript语言原生对象(语言级对象),如String、Object、Functi等。2)JavaScript运行期的宿主对象(环境宿主级对象),如window、document、body等。
上代码
var str = new String("实例初始化String"); var str1 = "直接赋值的String"; var func = new Function("x","alert(x)");//示例初始化func var o = new Object();//示例初始化一个Object
3、使用json符号
var somebooks = { book:[{name:"三国演义"},{name:"西游记"},{name:"水浒传"},{name:"红楼梦"}], author:[{name:"罗贯中"},{name:"吴承恩"},{name:"施耐安",{name:"曹雪芹"}}] }
4、自定义对象构造 创建高级对象构造有两种方式:使用“this”关键字构造、使用原型prototype构造。如:
function Girl() { thisname = "big pig"; thisage = 20; thisstanding; thisbust; thiswaist; thiship; }
正则都写不出来,只能帮你匹配到前三个
(im)^<p><(\w+) title=() name=((! ))(>| >)
最后一个VALUE没办法,你的SELECT里面有那么多OPTION,每个OPTION又有一个VALUE,我无能为力
如果是你这样很好解决。你就写多个input,name一样,跟传一个对象一样 做。发现到controller层会收到一个对象,name是用逗号分割开的。还有一种方法是楼上所说的,你不要传整个对象,单个name属性传,到controller里用string[] 接收。当然还有别的方法,但并不讨巧。可以参考>
以上就是关于JavaScript中的form元素获取问题全部的内容,包括:JavaScript中的form元素获取问题、jquery name选择器返回value数组、如何获取一个js数组的第一个对象等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)