首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >js文件未加载ajax加载部分视图MVC 4

js文件未加载ajax加载部分视图MVC 4
EN

Stack Overflow用户
提问于 2014-09-30 13:43:04
回答 1查看 819关注 0票数 0

在过去的几天里,我一直面临一个问题,那就是我无法访问在主视图中引用的局部视图中的任何.js文件。甚至我也尝试在局部视图中再次引用相同的文件,但没有成功。我使用ajax链接打开部分视图作为模式弹出窗口。据我所知,在Ajax调用的情况下,js文件不会被加载。所以尝试了http://geekswithblogs.net/DougLampe/archive/2010/11/12/execute-javascript-in-mvc-partial-view.aspxlink。但没那么走运。我不确定要在公共ActionResult DynamicJavaScript()方法中编写什么。

但是,如果我在局部视图中编写嵌入式脚本,那么它的工作方式当然是与局部视图一起加载,但不是在js文件中。PSB我的代码打开部分视图。

代码语言:javascript
运行
复制
@Ajax.ActionLink("Edit", "EditVoucherBook", "Tasks", new { id = m1.vbkID, PageNumber = Model.PageNumber }, new AjaxOptions { HttpMethod = "get", OnBegin = "openmodalpopup", OnComplete = "closemodalpopup" }, new { @class = "modal-popup" }).

openmodalpopup和closemodalpopup需要在局部视图中编写,用于显示ajax加载图像(.gif)。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-11-14 21:24:28

你好,我也有同样的问题,我只是简单地把@Ajax.ActionLink改成一个带有内联javascript的按钮就解决了

我的旧代码在我的list.cshtml部分屏幕中

代码语言:javascript
运行
复制
@Ajax.ActionLink("Add Notes", "OpenCreateForm", new { merchantNumber = Model.MerchantNumber }, new AjaxOptions { InsertionMode = InsertionMode.Replace , HttpMethod = "GET", OnSuccess = "OpenPopup" }, new { @class = "btn form-size200" })

"OpenCreateForm“是我的控制器方法。这种情况下,我无法访问任何捆绑的js脚本。

我把我的@Ajax.ActionLink改成了简单的按钮

代码语言:javascript
运行
复制
<input type="button" class="btn form-size200" value="Add Notes" onclick="openFormCreate(@Model.MerchantNumber);" />

然后在我的索引文件中,我编写了这段js代码。

代码语言:javascript
运行
复制
function openFormCreate(mrcNumber) {
    $.ajax({
        contentType: 'application/html',
        url: '@Url.Action("OpenCreateForm", "BranchNotes")',
        dataType: 'html',
        type: 'GET',
        data: {
            merchantNumber: mrcNumber
        }
    }).done(function (result) {
        CreateDialog('Notes');
        myDialog.html(result).dialog().dialog('open');
    });
}

我的控制器是

代码语言:javascript
运行
复制
    public ActionResult OpenCreateForm(string merchantNumber)
    {
        BranchNotesDetailViewModel viewModel = new BranchNotesDetailViewModel()
        {
            MerchantBranchNotes = new MerchantBranchNote()
            {
                MerchantNumber = long.Parse(merchantNumber),
            }
        };

        return PartialView("Edit", viewModel);
    }

我希望这能帮到你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26113537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档