【问题标题】:Replace Ajax.ActionLink替换 Ajax.ActionLink
【发布时间】:2019-04-29 03:16:18
【问题描述】:

您好,我有一个运行良好的 Ajax 操作链接,一旦我单击链接,它就会从部分视图中显示一些文本,问题是我希望在页面加载后显示这些文本,而无需单击操作链接。我是新手,我已经在谷歌上搜索过,但没有任何帮助。

这是代码

View.cshtml

@Ajax.ActionLink("Show my Text", "_Text",
new AjaxOptions
                {
                    HttpMethod = "GET", 
                    UpdateTargetId = "ajaxdiv",
                    InsertionMode = InsertionMode.Replace 
                })

 <div id="ajaxdiv"></div>

部分视图:_Text.cshtml

@model Website.MyViewModel

@foreach (TextTable item in Model.TextList)
{
    <h5> @item.UserText </h5>  
}

控制器:

public PartialViewResult  _Text()
    {

        DBEntities DB = new DBEntities();
        var sessionID = Session["id"];
        int SessionID = Convert.ToInt32(sessionID);
        var viewModel = new MyViewModel
        {

            TextList= DB.TextTable.ToList()
        };

        return PartialView(viewModel);
    }

【问题讨论】:

    标签: javascript jquery asp.net ajax asp.net-ajax


    【解决方案1】:

    在您的 ajax 选项中添加 OnSuccess 并创建将隐藏它的 jquery 函数。

    @Ajax.ActionLink("Show my Text", "_Text",
    new AjaxOptions
                    {
                        HttpMethod = "GET", 
                        UpdateTargetId = "ajaxdiv",
                        OnSuccess = "hideFunction",
                        InsertionMode = InsertionMode.Replace 
                    })
    

    在你的 js 中创建一个类似的函数。

    function hideFunction() {
        $(this).hide();
    }
    

    【讨论】:

    • 您可能没有以正确的方式实施。否则它应该工作
    • 也许我解释不清楚,我将你的代码添加到我的项目中,现在按钮在我点击后隐藏,我希望加载 ajax 函数而不点击它
    猜你喜欢
    • 1970-01-01
    • 2014-07-25
    • 2013-04-28
    • 1970-01-01
    • 1970-01-01
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多