开云手机站登录入口手机版登录

3年前 (2023-04-22)

这是从外部调用控制器功能的一种方法:

angular.element(document.getElementById('yourControllerElementID')).scope().get();

get()您的控制器的功能在哪里。

你可以切换

document.getElementById('yourControllerElementID')`

$('#yourControllerElementID')

如果您使用的是jQuery。

另外,如果您的函数意味着要更改View上的任何内容,则应调用 同题参见

angular.element(document.getElementById('yourControllerElementID')).scope().$apply();

应用更改。

还有一点,您应该注意的是,作用域是在页面加载后初始化的,因此,应始终在作用域外加载页面后才从作用域外部调用方法。 对照阅读否则,您将根本无法解决问题。

使用最新版本的angular,您应该使用

angular.element(document.getElementById('yourControllerElementID')).injector().get('$rootScope')

是的,事实上,这是 ,但是有时候您只需要快速而又肮脏地完成工作即可。 相关阅读

如何从网页的任何位置(控制器组件外部)调用控制器下定义的函数?

当我按下“获取”按钮时,它可以完美运行。但是我需要从div控制器外部调用它。逻辑是:默认情况下,我的div是隐藏的。在导航菜单中的某个位置,我按了一个按钮,它应该显示()我的div并执行“获取”功能。我该如何实现?

我的网页是:

我的js:

 function MyController($scope) {
 // default data and structure
 $scope.data = {
 "firstname" : "Nicolas","lastname" : "Cage"
 };

 $scope.get = function() {
 $.ajax({
 url: "/php/get_data.php?",type: "POST",timeout: 10000,// 10 seconds for getting result,otherwise error.
 error:function() { alert("Temporary error. Please try again...");},complete: function(){ $.unblockUI();},beforeSend: function(){ $.blockUI()},success: function(data){
 json_answer = evals('(' + data + ')');
 if (json_answer){
 $scope.$apply(function () {
 $scope.data = json_answer;
 });
 }
 }
 });
 };

 $scope.update = function() {
 $.ajax({
 url: "/php/update_data.php?",data: $scope.data,otherwise error.
 error:function() { alert("Temporary error. Please try again...");},success: function(data){ }
 });
 };
 }

你可能想看:

标签:data
分享给朋友:

继续阅读

若需了解「开云手机站登录入口手机版登录」的上下文,可结合站内栏目与相关篇目交叉阅读。

栏目用于追新,文内链接用于对照细节。两者配合可减少漏读与重复检索。

继续浏览时优先选择同栏目或相近主题,避免被站外镜像带偏。

站点导览

wiki · 科技 · 文化 · 主页

页面按栏目组织。可先看导读,再进入相关篇目或返回列表。