序列化不包括隐藏的字段
我在表单上运行序列化,其中的字段隐藏 – 这是一个非常重要的领域,应该发布。 有什么方法可以轻松地通过jQuery序列化,或者我应该写我自己的function?
序列化 确实包含了所有启用的具有name
属性的 input
元素。
也许在一个select器中将两者结合起来会起作用吗?
$(":input,:hidden").serialize();
编辑:我只是尝试了以上,它的工作。 但是,$(“form”)。serialize(); 应该像其他人所提到的那样自动采取所有input
这个问题有一个奇怪的变化。 隐藏的字段有名字。
alert($("#myForm").serialize())
正确地popup一个窗口与所有隐藏的领域。 但
$.post('myposts.php', $("#myForm").serialize(), function(data) { $('#myResult').html(data); });
没有隐藏的字段。 当php脚本print_r($_POST)
的隐藏和checkbox是mising
只是自己碰到这个问题,并且破解了一个解决scheme。
问题与JQuery拾取隐藏的html信息的方式有关。 它不会拿起一个隐藏字段的TEXT作为它的值,你必须使用value =属性。
要在JQUERY中设置,使用$(field).val(yourvalue);
您应该为所有元素添加名称以使serialize函数正常工作
我也有这个问题。 出于习惯,我用/>closuresinput字段。 我发现隐藏的input在这种方式closures时不起作用。
<input type="hidden" name="someName" value="someValue" />
不起作用。
<input type="hidden" name="someName" value="someValue" >
确实有效