相关疑难解决方法(0)

Blazor 链接 - 如果有 onclick 方法,则禁用 href

在 Blazor 中,我有一个<a>同时具有 ahrefonclick方法的元素:

<a href="" onclick="@(() => ChangePage(_someObject))">Test</a>
Run Code Online (Sandbox Code Playgroud)

onclick 调用这个方法:

  private bool ChangePage(object objectToDisplay)
  {
    _currentObject = objectToDisplay;
    StateHasChanged();

    return false;
  }
Run Code Online (Sandbox Code Playgroud)

通常在 JavaScript 中,从 event 方法返回 false 会停止后续导航到 中的链接href但这似乎不适用于我上面的代码。

单击链接后,如何阻止 Blazor 将页面更改为根 url?

(这里显而易见的答案是href完全删除,但我正在使用引导 Pill 中的链接并删除 Pillhref工作的停止)

我尝试过的其他方法不起作用:

  • <a>元素更改为跨度并设置data-target属性,但这会正确停止 Pills 渲染。
  • 添加returnonclick事件中(根据此答案):onclick="return @(() => ChangePage(_overviewModel))"但这不会编译。
  • returnonclick事件之后添加:onclick="@(() => ChangePage(_overviewModel)); …

c# blazor blazor-server-side

29
推荐指数
4
解决办法
2万
查看次数

在javascript onclick功能完成之前链接重定向页面

我有一个链接加载页面并在点击时调用javascript函数.问题是在页面重定向之前javascript函数无法完成.反正有没有确保它呢?

您会注意到alert()javascript函数中有一个被注释掉的内容,如果我取消注释它,该函数就能完成.但是,我显然不希望实际发生警报弹出窗口.

链接在这里 :

<a href="p.php?p=$randString&s=$postCat" onclick="setYSession();">
Run Code Online (Sandbox Code Playgroud)

这是无法及时完成的​​javascript函数:

function setYSession() {
    var YposValue = window.pageYOffset;
    $.get('yPosSession.php?yValue=' + YposValue);
    //alert(YposValue);
    return false;
}
Run Code Online (Sandbox Code Playgroud)

javascript function onclick href

9
推荐指数
1
解决办法
2万
查看次数

无需使用 &lt;a href=" "&gt; 重新加载页面即可更改 URL

要在不重新加载页面的情况下修改 URL,我们可以使用:

window.history.pushState('page2', 'Title', '/page2.php');
Run Code Online (Sandbox Code Playgroud)

但如果我用<a>element试试:

<a onClick='my_function()' href='/page2.php'> Click Here </a>
<script>
function my_fnuction(){
    window.history.pushState('page2', 'Title', '/page2.php');

}
 </script>
Run Code Online (Sandbox Code Playgroud)

它不起作用,那么我怎样才能使用<a> element 和window.history.pushState()一起呢?像twitter和Facebook一样,用户可以点击右键在新窗口中打开网址,直接点击获取页面和更改网址,无需重新加载

html javascript jquery

1
推荐指数
1
解决办法
4084
查看次数

指定onClick时不要打开href(在react js中)

我们的<a>标签通过为onClick房产提供功能,在我们的应用程序中打开自定义pdf查看器.

我们希望提供可访问性的href,因此用户可以右键单击 - >在新选项卡中打开,控制+单击或他们想要的其他内容.

但是,当用户单击<a>标记时,我们不希望实际打开链接,而是我们的onClick函数应该处理该事件.

目前我们有这样的事情:

render(){
  return (<a href="www.stackoverflow.com" onClick={(e)=>this.linkClick(e)} >click here</a>)
}

linkClick(e) {
   e.stopPropagation(); // does not stop the link from opening
   console.log("link clicked");
   return false; // does not stop the link from opening
}
Run Code Online (Sandbox Code Playgroud)

在普通的js中,这可以通过在onClick函数上返回false来完成.我们也试过添加stopPropagation()无济于事.一些反应用户添加href="javascript: void(0)",但这确实禁用了链接,它不符合我们的可访问性需求.

javascript reactjs

1
推荐指数
1
解决办法
696
查看次数

Ajax.BeginForm两次提交表单

我的模态插入数据时遇到问题.每次我添加一个新行时,它都会在数据库中输入第二行.我真的不知道我做错了什么,所以如果你有一个关于如何解决这个问题的想法,请帮助我.

这是我的控制器:

 public ActionResult IndexEvent()
    {
        return View(db.tbl_Event.ToList());
    }

    [HttpGet]
    public ActionResult AddEvent()
    {
        return PartialView();
    }

    [HttpPost]
    public ActionResult AddEvent(BOL3.tbl_Event eve)
    {
        if(ModelState.IsValid)
        {
            db.tbl_Event.Add(eve);
            db.SaveChanges();
        }
        return PartialView("_Detail", db.tbl_Event.ToList());
    }
Run Code Online (Sandbox Code Playgroud)

,这是我的索引视图,_Detail局部视图和添加局部视图(按相同顺序):

@model IEnumerable<BOL3.tbl_Event>

@{
    ViewBag.Title = "Index";
}

<link href="@Url.Content("~/Content/bootstrap/css/bootstrap.min.css")" rel="stylesheet" />
<link href="@Url.Content("~/Content/bootstrap/css/bootstrap-theme.min.cs")" rel="stylesheet" />
<link href="@Url.Content("~/Content/bootstrap/css/font-awesome.min.cs")" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script src="~/Scripts/bootstrap.min.js"></script>

<div id="main-div">
    <div class="clearfix">&nbsp;</div>
    <div class="clearfix">&nbsp;</div>
    <div class="container">
        <a href="@Url.Action("AddEvent", "Prog")" id="Add" class="btn btn-primary btn btn-xs"><i class="glyphicon glyphicon-plus"></i>&nbsp; Add New</a>
        <br /> …
Run Code Online (Sandbox Code Playgroud)

ajax entity-framework asp.net-mvc-4

0
推荐指数
1
解决办法
1289
查看次数