<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>
当我单击“执行”按钮时。我希望它触发doSomething,然后返回同一位置,并且不提交表单或更改页面。即使我输入类型=“ button”而不提交,它也将我从当前使用的模式重定向到其他地方。我不明白为什么?我尝试了此页面Can I make a <button> not submit a form?上的一些解决方案...它们不起作用
答案 0 :(得分:1)
您可以使用'preventDefault'事件来停止按钮的提交。 请参考一下。 https://www.w3schools.com/jsref/event_preventdefault.asp
答案 1 :(得分:1)
我看到您正在使用Angular。我在此解决方案中使用了简单的JavaScript和HTML。您可以修改以使您的代码返回正确的布尔值,或者如果需要的话,也可以将硬代码返回“ false”。关键元素是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>
答案 2 :(得分:1)
在我的项目中发生的事情完全无关,这就是问题所在。当我单击提交时,有一种方法可以将其重定向到其他页面。我只是更改了该方法,现在它不发布并返回同一页面。这是我的项目特有的。