Angularjs 不适用于 Jquery 加载功能
Posted
技术标签:
【中文标题】Angularjs 不适用于 Jquery 加载功能【英文标题】:Angularjs Does not work with Jquery load function 【发布时间】:2017-10-31 20:07:03 【问题描述】:我正在使用 ASP.Net MVC5 和 AngularJS 1.5 创建一个 Web 应用程序,我有一个页面是从 MVC ActionResult 显示数据,并使用 AngularJS 执行进一步的编辑和删除操作。
但是当我执行编辑操作时,从 ASP.net MVC 控制器调用一个 jsonresult 并执行具有成功结果的完美编辑操作,但我还想刷新从 MVC ActionResult 显示的数据,所以我创建了一个局部视图并使用Jquery 加载函数并传递 URL(MVC ActionResult Url)。
加载函数使用数据库中的当前更改刷新数据,但之后 AngularJS 不起作用,即使 AngularJS Expressions
不起作用
$http.post('myactionName',param:param).success(function (data)
$('#DiV').load("mypartialActionName");
<div id="DiV">
@html.Partial("_PartialViewName")
</div>
【问题讨论】:
ng-view 应该告诉你一些事情 将其用作“body”标签中的属性指令 我也创建了自己的指令,但它不起作用我面临同样的问题, @madalinivascu 我是这项技术的新手,可以帮助我提供任何教程或链接 @MukeshGupta 有一个新人来学习新技术的禁地docs.angularjs.org 【参考方案1】:首先添加您的 jQuery 和 Angular 文件,然后创建“应用”模块
HTML
<body configs>
<div id="DiV"> @Html.Partial("_PartialViewName") </div>
</body>
指令
app.directive("configs", function($http)
return
link: function()
$http.post('myactionName',param:param).success(function (data)
$('#DiV').load("mypartialActionName");
);
【讨论】:
我对此进行了分层,但我得到了相同的结果,我的部分视图得到了更新,但我的 angularjs ng-click 第二次不起作用,事实上不仅 ng-click 甚至表达式值都没有显示,但是当我刷新页面 ng-click 开始工作,然后我再次编辑内容,记录得到更新,但再次单击停止工作,我需要手动按 f5【参考方案2】:首先我想说的是,如果你完全使用 AngularJs,那么不要使用 @Html.Partial()..使用 ng-include 内置指令而不是注入外部模板。现在你完全依赖在 MVC 上这是不好的做法..您必须将 MVC 仅用于服务器端而不是前端部分,并且 AngularJs 异步使用 $http 您无需刷新即可检索数据并且不要依赖 JQUERY..AngularJs可以处理 JQUERY 所做的所有事情..
【讨论】:
以上是关于Angularjs 不适用于 Jquery 加载功能的主要内容,如果未能解决你的问题,请参考以下文章
带有 angularjs 的数据表不适用于 Columns 和 dtOptions
getCurrentPosition 不适用于 angularjs