我在asp.net核心的表单内有一个按钮。表单具有自己的提交按钮,该按钮应在单击时触发创建操作。我还有另一个按钮insde的形式,它只是调用一段javascript代码。我不明白为什么当我单击按钮以调用javascript时,之后也会调用发布操作“创建”。那就是我看到警报框,然后通过操作重定向。我只想显示警报而不会触发操作方法。
function ValidateName() {
var name = document.getElementById('btnName').value;
alert(name);
}
<form asp-action="Create">
<div class="form-group">
<div class="form-group">
<label asp-for="Name" class="control-label"></label>
<input asp-for="Name" class="form-control" />
<span asp-validation-for="Name" class="text-danger"></span>
</div>
<div class="row">
<div class="col-md-6 text-center">
<button id="btnName" class="btn btn-primary btn-md center-block" Style="width: 150px;" OnClick="ValidateName()">Validate</button>
</div>
</div>
</div>
<div class="form-group">
<input type="submit" value="Créer" class="btn btn-default" />
</div>
</form>
答案 0 :(得分:0)
您需要防止默认行为
function ValidateName(e) {
e.preventDefault();
var name= document.getElementById('btnName').value;
alert(name);
}