Javascript 在单击时添加div内容
我正在做一个异步调用点击一个按钮,并希望添加标签。 我还使用了s.$apply()-我是JS/Angular JS新手。我可以得到类似功能的帮助/提示吗?我在show/hide上发现了一些示例,但没有任何更新dom的示例。 谢谢 控制器代码:Javascript 在单击时添加div内容,javascript,angularjs,angularjs-scope,firebase,angularjs-controller,Javascript,Angularjs,Angularjs Scope,Firebase,Angularjs Controller,我正在做一个异步调用点击一个按钮,并希望添加标签。 我还使用了s.$apply()-我是JS/Angular JS新手。我可以得到类似功能的帮助/提示吗?我在show/hide上发现了一些示例,但没有任何更新dom的示例。 谢谢 控制器代码: angular.module('solr').controller('SolrController', ['$scope', 'Solr', '$http', function ($scope, Solr, $http) {
angular.module('solr').controller('SolrController', ['$scope', 'Solr', '$http',
function ($scope, Solr, $http) {
var s = $scope;
s.dataPresent=false;
s.policies = function(){
Solr.getDocuments(s.searchStr).then(function(data){
$scope.dataPresent=true;
$scope.test="done";
console.log(data);
$scope.data= data;
})
}
}
]);
HTML片段粘贴在下面
<div class="navbar-default sidebar" role="navigation">
<div class="sidebar-nav navbar-collapse">
<ul class="nav" id="side-menu">
<li class="sidebar-search">
<div class="input-group custom-search-form" ng-controller="SolrController">
<input type="text" class="form-control" ng-model="searchStr" placeholder="Search...">
<span class="input-group-btn">
<button class="btn btn-default" type="button" ng-click="policies()">
<span class="glyphicon glyphicon-search"></span>
</button>
</span>
</div>
<!-- /input-group -->
</li>
</ul>
</div>
</div>
</div>
<div class="col-sm-10" ng-show="dataPresent">Test</div>
ng控制器
指令使用新作用域初始化控制器
在已放置指令的元素的上下文中可用
您ng show
指令对dataPresent
变量一无所知,因为它不在ng控制器div内,您应该确保Test
div应该在SolrController
div内
标记
<section data-ng-controller="SolrController">
...other html here..
<div class="navbar-default sidebar" role="navigation">
<div class="sidebar-nav navbar-collapse">
<ul class="nav" id="side-menu">
<li class="sidebar-search">
<div class="input-group custom-search-form">
<input type="text" class="form-control" ng-model="searchStr" placeholder="Search...">
<span class="input-group-btn">
<button class="btn btn-default" type="button" ng-click="policies()">
<span class="glyphicon glyphicon-search"></span>
</button>
</span>
</div>
<!-- /input-group -->
</li>
</ul>
</div>
</div>
<div class="col-sm-10" ng-show="dataPresent">Test</div>
</section>
…这里有其他html。。
-
试验
div被“”包装,尝试过的“Test”仍然不起作用。已使用$apply方法更新我的问题tried@patb23你误会我了。如果没有ng控制器,你ng show
div将是Test
,非常感谢你的回答和解释。我将ng controler保留在“Section”级别,它起了作用。@patb23很高兴能帮助您。。谢谢:)在这里看不到与Firebase的关系。这里连一行Firebase代码都没有。
<section data-ng-controller="SolrController">
...other html here..
<div class="navbar-default sidebar" role="navigation">
<div class="sidebar-nav navbar-collapse">
<ul class="nav" id="side-menu">
<li class="sidebar-search">
<div class="input-group custom-search-form">
<input type="text" class="form-control" ng-model="searchStr" placeholder="Search...">
<span class="input-group-btn">
<button class="btn btn-default" type="button" ng-click="policies()">
<span class="glyphicon glyphicon-search"></span>
</button>
</span>
</div>
<!-- /input-group -->
</li>
</ul>
</div>
</div>
<div class="col-sm-10" ng-show="dataPresent">Test</div>
</section>