Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc Ajax获取通知_Asp.net Mvc_Asp.net Ajax - Fatal编程技术网

Asp.net mvc Ajax获取通知

Asp.net mvc Ajax获取通知,asp.net-mvc,asp.net-ajax,Asp.net Mvc,Asp.net Ajax,我一直在寻找一个例子,但我一定是使用了错误的搜索短语,因为我没有找到一个 我有一个显示在局部视图中的“列表”,正在使用以下代码生成Ajax操作链接: <td> @Ajax.ActionLink( "Add", "AddClient", new { id = consignee.nId, mailingListId = consignee.MailingListId }, new AjaxOptions {

我一直在寻找一个例子,但我一定是使用了错误的搜索短语,因为我没有找到一个

我有一个显示在局部视图中的“列表”,正在使用以下代码生成Ajax操作链接:

    <td>
    @Ajax.ActionLink(
    "Add", "AddClient", new { id = consignee.nId, mailingListId = consignee.MailingListId },
        new AjaxOptions
        {
            HttpMethod = "GET",
            LoadingElementId = "loading2",
            LoadingElementDuration = 750
        })
   </td>

@Ajax.ActionLink(
“添加”、“添加客户机”、新的{id=delicator.nId,mailingListId=delicator.mailingListId},
新选择
{
HttpMethod=“GET”,
LoadingElementId=“loading2”,
LoadingElement持续时间=750
})
此呼叫有效,但我希望在屏幕顶部显示一个通知,上面写着“已添加记录”

当前样式将所有信息向下移动,看起来很奇怪

<body>
   <div id="loading2" style="display:none">
     <div class="alert alert-success">
        <strong>Added!</strong>
     </div>
   </div>

添加
我想一段文字只是弹出在屏幕的顶部,在那里的标志,而不是移动任何当前的HTML下来

如果有人能帮忙我会非常感激,
TIA

您可以将css类添加到通知div中,将其定位为绝对,并指定
顶部的位置。您可以首先隐藏它(使用另一个css类),并在需要显示通知时更新可见性

<div id="loading2" class="alwaysTop hidden">
     <div class="alert alert-success">
        <strong>Added!</strong>
     </div>
</div>
这会将您的div添加到页面的右上角。无论何时要显示通知消息,请删除hiddenClass

$("#loading2").removeClass("hidden");
这是一个工作样本

如果您不想做更多的自定义工作,那么编写HTML标记(不使用Ajax.ActioLink方法)并自己控制Ajax功能总是好的

<td>
    @Html.ActionLink("Add", "AddClient","Client", 
    new {id = consignee.nId, mailingListId = consignee.MailingListId },
                                                new {@id="addLink"})
假设在
ClientController

public ActionResult AddClient(int id, int mailingListId)
{
  // do something 
  return Json(new { status="success"}, JsonRequestBehavior.AllowGet);
}

如果你不想在做通知上重新发明轮子,你可以使用jquery插件来做通知。查看

您可以只设置元素的样式,使其完全定位。例如,此操作非常有效,但注释仍显示在屏幕顶部。如果我有2或3页的数据,并且在底部添加了一条记录,我就看不到警报。
$(function(){
  $("#addLink").click(function(e){
    e.preventDefault();
    $.get($(this).attr("href"),function(res){
       if(res.status==="success")
       {
         $("#loading2").removeClass("hidden");
       }
    });
  });
});
public ActionResult AddClient(int id, int mailingListId)
{
  // do something 
  return Json(new { status="success"}, JsonRequestBehavior.AllowGet);
}