J'ai ce code jQuery:Faire URl réoriente dans une instruction jQuery
jQuery(document).ready(function($) {
$('#myform').submit(function() {
if ($('#myform input').is(':checked')) {
} else {
//alert('Checkbox is not checked!!');
window.location.replace("http://example.com/product-comparisons/?product-skus=0");
}
});
});
Je veux rediriger vers cette URL:
http://example.com/product-comparisons/?product-skus=0
Si l'utilisateur clique sur la case à cocher sans cochés.
J'ai essayé le code ci-dessus en fonction de cette suggestion: How to redirect to another webpage in JavaScript/jQuery?
Mais ça ne marchera pas. J'apprécierais pour toutes les entrées et suggestions. Je vous remercie!
MISE À JOUR: Ceci est mon code HTML/formulaire:
<form action="/product-comparison/" id="myform">
<ul>
<li>
<input type="checkbox" name="product-skus[]" value="1" id="mycheckbox">
<a href="http://example.com/product/translator/">Translator</a>100<img width="150" height="150" title="View product" style="" alt="View product" class="attachment-thumbnail" src="http://example.com/wp-content/uploads/2012/12/pic1-150x150.jpg"></li>
<li><input type="checkbox" name="product-skus[]" value="2" id="mycheckbox">
<a href="http://example.com/product/arrows/">Arrows</a>120<img width="150" height="150" title="View product" style="" alt="View product" class="attachment-thumbnail" src="http://example.com/wp-content/uploads/2012/12/pic2.jpg"></li></ul>
<input type="submit" value="Compare">
</form>
Cependant, je crois que mon sélecteur est correct, car ce code de diagnostic (en utilisant des alertes pour vous assurer entonnoirs jQuery à la logique à droite) est parfaitement travail:
jQuery(document).ready(function($) {
$('#myform').submit(function() {
if ($('#myform input').is(':checked')) {
alert('Checkbox is checked, do nothing');
} else {
alert('Checkbox is not checked!!, do the redirects');
}
});
});
Fournir le code html, je pense que le sélecteur n'est pas correct. – SaidbakR
Avez-vous essayé de déboguer le $ ('# myform input'). Is (': checked')? $ ('# myform input') retournera un tableau d'éléments d'entrée, ce qui peut entraîner l'erreur de la dernière fonction (': checked'). –
Il y a une erreur dans la console JS mais je ne peux pas saisir l'erreur exacte après l'envoi du formulaire. est-il un moyen de mettre en pause l'exécution du code? –