我正在使用ViewBag将列表传递到视图中。然后,我使用列表上的foreach一步一步地将列表中的每个字符串显示为href。我有一个功能,允许用户单击每个href从列表中删除它。问题是,当用户单击href将其从列表和视图中删除时,网页将跳回到顶部。有什么办法可以阻止我吗?例如当用户单击以从列表中删除href字符串时,页面停留在原位置
edit.cshtml
<div class="form-group" style="min-height: 100px">
<div class="col-md-10" style="min-height: 100px" >
<hr />
<p><strong>Flagged Questions</strong></p>
@foreach (var item in ViewBag.FLagList)
{
<div >
<a href="#" onclick="this.parentNode.parentNode.removeChild(this.parentNode)">@item</a>
</div>
}
</div>
</div>
功能
<script>
function onDelete(elm, id) {
// Do something with id
console.log(id)
elm.parentNode.removeChild(elm)
}
</script>
执行函数后,发生href="#"
的链接被触发的情况。
您可以在函数或更高版本中返回false,传递事件并调用event.preventDefault()