使用jquery填充数组样式表单字段

时间:2012-12-22 14:34:56

标签: javascript jquery asp.net-mvc

我想发布一个带有这里描述的属性的表单(MVC友好数组):https://stackoverflow.com/a/5003686/1246219 我想POST表单而不是使用ajax的原因是结果是一个可供下载的文件,即使用表单没有其他原因。

但是我有一个包含我想提交的值(整数)的javascript数组。我能想到的实现这一目标的唯一方法是循环并为每个条目创建输入元素,或者我可以用逗号分隔的字符串填充单个表单字段并解析服务器端。有没有更好的办法?

更新 - 如果有人有兴趣,我最终会采用循环方式,而恰好用d3编写它。

var selected = [1,2,3];
var selectionBinding = d3.select("#myForm").selectAll("input[name='myField']").data(selected);
selectionBinding.exit().remove();
selectionBinding.enter().append("input")
                .attr("type", "hidden")
                .attr("name", "myField")
                .attr("value", function (data) { return data });
$("#myForm").submit();

1 个答案:

答案 0 :(得分:4)

我的建议是创建一个包含数据的regular Javascript Array,并使用input type text的表单。提交表单时,请将输入文本的值设置为JSON.stringify(myArray)