<div> <div> <fieldset> <div style="min-height: 600px;"> <div class="row"> <div class="col-xs-12"> <div class="form-group"> <label class="control-label" for="Order">Order<span style="color:red !important;">*</span></label> <input class="form-control" name="Order" id="sortOrder" type="number" placeholder="Order" ng-model="vm.sortOrder" autocomplete="off" required/> </div> </div> <br> <br> </div> <div class="row"></div> <div class="row"> <div class="col-xs-12 form-group"> <md-button class="md-raised md-primary" type="button" ng-click="vm.doSomeThing()">Do</md-button> </div> </div> </div> </fieldset> </div> </div> When i click do button. i want it to to fire doSomething and then come back to same place and do not submit form or change page. Even though i put type =" button" and not submit , it redirecting me away from the modal i am on. I don't understand why? I tried some solutions from this page Can I make a <button> not submit a form?... They did not work somehow
3 Réponses :
Vous pouvez utiliser l'événement 'preventDefault' pour empêcher la soumission du bouton. Utilisez la jachère pour votre référence. https://www.w3schools.com/jsref/event_preventdefault.asp p >
Certains comment cela n'a pas aidé. Il y a un problème simple que je ne vois pas ici, je pense.
pourriez-vous partager la fonction faire quelque chose aussi
vérifier ma réponse @wassaf
Je vois que vous utilisez Angular. J'ai utilisé du JavaScript et du HTML simples dans cette solution. Vous pouvez modifier pour que votre code renvoie le booléen approprié ou simplement coder en dur un "return false" si vous le souhaitez. L'élément clé est la clause onclick: onclick = "return doSomeThing ();"
<script> function doSomeThing() { var shouldISubmit = false; return shouldISubmit; // You can conditionally return true (submit) or false (do not submit) }; </script> <form> <div class="col-xs-12 form-group"> <button type="submit" onclick="return doSomeThing();">Do</button> </div> </form>
J'ai essayé cette solution avant de renvoyer false, je l'ai réessayée après votre suggestion. Cela ne fonctionne toujours pas. Quelque chose l'emporte sur tout peut-être
D'accord, il doit y avoir autre chose qui se passe. Je suggérerais de simplifier au strict minimum un fichier de test pour découvrir ce qui ne va pas.
Je l'ai trouvé, vérifiez ma réponse @Geroge
Heureux de l'avoir trouvé! Ce serait bien si j'avais un vote positif sur ma solution :)
Quelque chose de complètement indépendant se passe dans mon projet qui pose le problème. Il existe une méthode qui le redirige vers une page différente lorsque je clique sur Soumettre. Je viens de changer cette méthode et maintenant elle ne poste pas et retourne à la même page. Ceci est très spécifique à mon projet.