在javascript中设置多值参数
当我在 HTML 中提交表单时,我可以多次传递参数,例如
<input type="hidden" name="id" value="2">
<input type="hidden" name="id" value="4">
然后在 struts 中我可以有一个带有属性 String[] id 的 bean,并且它将正确填充数组。
我的问题是,我怎样才能在 Javascript 中做到这一点? 当我有一个数组并设置 form.id.value = myArray 时,它只是将值设置为逗号分隔的列表。 那么在 Struts 端,我只得到单元素数组,即字符串“2,4”。
我应该补充一点,我需要以表单的形式提交它,所以我不能只生成一个 GET 请求,例如 id=2&id=4。
When I submit a form in HTML, I can pass a parameter multiple times, e.g.
<input type="hidden" name="id" value="2">
<input type="hidden" name="id" value="4">
Then in struts I can have a bean with property String[] id, and it'll populate the array correctly.
My question is, how can I do that in Javascript? When I have an array, and I set form.id.value = myArray, it just sets the value to a comma-separated list. So then on the Struts end, I just get one-element array, i.e. the String "2,4".
I should add, I need to submit this in a form, so I can't just generate a GET request, e.g. id=2&id=4.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这是您要找的吗? 它为 JavaScript 数组的每个元素生成一个隐藏的表单字段:
Is this what you're looking for? It generates a hidden form field for each element of a JavaScript array:
不确定您想要做什么,但可以尝试一下:
迭代名称为“
id
”的所有输入,并从 myArray 中分配相应的值。您最好确保
myArray.length == document.getElementsByName('id').length
Not positive what you're trying to do but here's a go:
That iterates over all the inputs with name '
id
' and assigns the corresponding value from myArray.You better be sure
myArray.length == document.getElementsByName('id').length
一种方法是为每个输入提供唯一的 ID:-
然后在 javascript 中:-
One approach would be to give each input a unique ID:-
Then in javascript:-
forms[0].elements.theName
包含名称属性为“theName”的所有元素的集合。 例子:forms[0].elements.theName
contains a collections of all elements with name-attribute 'theName'. Example: