我尝试使用另一个输入字段中的值插入多个隐藏的输入字段。
HTML
<div id="FormWrapper"></div>
FormWrapper在表单中。我尝试在里面添加一个输入,并且post值正常工作。 valueFromOtherInput也有值。
$('<input>').attr({
type: 'hidden',
name: 'valueFromInputFields[]',
value:$('#valueFromOtherInput').val()
}).appendTo('#FormWrapper');
但是当我提交表格时,帖子价值不存在。
答案 0 :(得分:1)
插入的值应该用引号括起来:
var hiddenInput = $("<input type='hidden' name='valueFromInput[]' value='" + $('#valueFromInput').val() + "'>");
但是帖子值不存在 - 同时确保$('#valueFromInput').val()
存在(非空)
答案 1 :(得分:0)
而不是连接尝试创建jQuery对象并使用方法或选项来设置属性
var hiddenInput =$('<input>', {
type:'hidden',
value:$('#valueFromInput').val(),
name:'valueFromInput[]'})
或
var hiddenInput =$('<input>').attr({name:'valueFromInput[]',type:'hidden'})
.val($('#valueFromInput').val());
比检查缺少的引号更容易,如果你不正确,则会抛出语法错误
答案 2 :(得分:0)
尝试
$('<input>').attr({
type: 'hidden',
name: 'valueFromInput[]',
value:$('#valueFromInput').val()
}).appendTo('#FormWrapper');
运行时添加试试这个
$("#FormWrapper").submit( function(eventObj) {
$('<input>').attr({
type: 'hidden',
name: 'valueFromInput[]',
value:$('#valueFromInput').val()
}).appendTo(this);
return true;
});