jQuery serialize() exclure tous les éléments à l'intérieur de la div.classname
Je suis en train d'exclure forme invisible valeurs de la fonction serialize() de jQuery sortie. Invisible entrées/sélectionne sont à l'intérieur de la div.ui-tabs-masquer div. Pas les enfants, mais les descendants. Donc en gros, j'ai besoin d'inclure tous les éléments (input, select) witin div sans ui-tabs-cacher de la classe ET de l'exclure de tous les éléments (input, select) au sein de div avec ui-tabs-masquer classe dans un formulaire.
Maintenant, avec ce que j'ai essayé il comprend tous les éléments de formulaire, mais je pense que je ne spécifiez pas de sélecteurs de droit.
Voir ci-dessous le code pour reproduire le problème:
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var formdata = $("#outboundcall:not(.ui-tabs-hide input, .ui-tabs-hide select)").serialize();
console.log(formdata);
});
</script>
<meta charset="utf-8" />
<title>JS Bin</title>
</head>
<body>
<form id="outboundcall">
<div class="content">
<div class="tabs ui-tabs ui-widget ui-widget-content ui-corner-all">
<ul class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all">
<li class="ui-state-default ui-corner-top ui-tabs-selected ui-state-active">
<a href="#tabs-1">Credit Card</a>
</li>
<li class="ui-state-default ui-corner-top">
<a href="#tabs-2">Cheque</a>
</li>
<li class="ui-state-default ui-corner-top">
<a href="#tabs-3">Direct Debit</a>
</li>
</ul>
<div id="tabs-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom">
<input type="hidden" value="1" name="lead-payment-method" />
</div>
<div id="tabs-2" class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide">
<p>Cheque functionality is not currently available.</p>
</div>
<div id="tabs-3" class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide">
<input type="hidden" value="3" name="lead-payment-method" />
</div>
</div>
</div>
</form>
</body>
</html>
Ici est jsbin avec ce code: http://jsbin.com/iyevux/5/
OriginalL'auteur Alexey | 2013-04-29
Vous devez vous connecter pour publier un commentaire.
Vous pouvez appliquer :non() à votre sélecteur de classe, puis match élément de formulaire les enfants avec le :entrée sélecteur:
en effet, j'aurais dû utiliser un sélecteur d'enfant au lieu d'un sélecteur de descendant. La réponse est maintenant résolu.
Génial, Merci! fonctionne: jsbin.com/iyevux/14
OriginalL'auteur Frédéric Hamidi
Essayez ceci:
ou
De jQuery: formulaire de sérialiser, les champs cachés, et pas de champs affichés
deuxième option: jsbin.com/iyevux/12 (les journaux chaîne vide)
OriginalL'auteur Rohan Kumar
Cela fonctionne :
Désolé plus tôt que je ne comprends pas la question complètement, va supprimer cette réponse
OriginalL'auteur dexterous