过去我一直使用隐藏字段,在提交按钮的 onClick 事件上,我使用自定义代码将列表内容(li 元素的文本)填充到隐藏表单字段中,并在服务器上解析出来-端使用自定义代码。
这一直感觉像是一个 hack,我想知道是否有更现代的方法。我想找到最通用的方法,但如果工具很重要,我在客户端使用 JQuery,在服务器上使用 Ruby/Sinatra。也许将列表转换为 JSON 对象,然后在服务器端消费?
最佳答案
如果你想作为逗号分隔的值
var values = $.map($('ol li'), function(e,i) {
return $(e).html();
});
$('form').append('<input type="hidden" name="field" value="' +
values.join(',') + '"/>');
或者你可以把它作为一个数组
var inputs = $.map($('ol li'), function(e,i) {
return '<input name="field[]" value="' + $(e).html() + '"/>';
});
$('form').append(inputs.join(" "));
关于jquery - 在 html 表单提交上发布有序列表内容的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3797766/