不要通过看不见的内容后形式提交(serialize)[重复]

0

的问题

我有一种形式的多div不可见(肘jQuery),因为用户相互作用。 在提交形式,我想保存的唯一可见(填充的用户)的元素。 不能得到它的工作。 在此先感谢!

<!DOCTYPE html>
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    $('#content').text($('#myform').serialize());
    });
});
</script>
</head>
<body>

<form action="" id="myform">
  First name: <input type="text" name="FirstName" value="Mickey"><br>
  Last name: <input type="text" name="LastName" value="Mouse"><br>
  <div style="display:none;"><input type="text" name="isthishidden" value="maybe"></div>
 <input type="hidden" name="action" value="verwerk">
</form>
<button>Serialize form values</button>
<p></p>
<div id="content"></div>

</body>
</html>
forms html javascript jquery
2021-11-23 20:08:53
1

最好的答案

2

一个小小的调整,以你的代码这可能:

$('#content').text($('#myform :visible').serialize());

$(document).ready(function(){
  $("button").click(function(){
    $('#content').text($('#myform :visible').serialize());
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<form action="" id="myform">
  First name: <input type="text" name="FirstName" value="Mickey"><br>
  Last name: <input type="text" name="LastName" value="Mouse"><br>
  <div style="display:none;"><input type="text" name="isthishidden" value="maybe"></div>
 <input type="hidden" name="action" value="verwerk">
</form>
<button>Serialize form values</button>
<p></p>
<div id="content"></div>

2021-11-23 20:20:39

什么如果我谨后隐藏的领域?
user1725719

也许我误会了您的问题。 我以为你只想到后可见的领域。 或者你意思是只发布的领域值(隐藏或不隐藏)?
Kinglish

不,你没有被误解。 它是一个额外的问题。 我怎么能后可见的领域,但后隐藏的领域。
user1725719

你的方式了它最初发布的所有领域中的形式,可见或不可见的。 #form :visible 只找到了形式要素是可见的。 你也可以做喜欢的东西 #form :not(:empty) 如果你想要只是发表的数据输入,有的价值观,在它们(忽略空投入)...
Kinglish

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................