在我的Angular指令中,我嘗試隱藏和顯示手風琴面板。問題是,當我通過代碼訪問手風琴時,手風琴打破了。如何在Angular指令中擴展自舉手風琴?
例如,當我這樣做:
$("#collapseOne").collapse('hide')
面板處於摺疊狀態,但在標題的鏈接不工作了,所以用戶無法展開面板。我也嘗試了諸如:
$("#collapseOne").removeClass('in');
和 $("#collapseOne").hide();
但他們沒有工作。或者他們有相同的效果,或者根本不工作。
下面是HTML:
<div class="accordion" id="accordion2">
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
Customer
</a>
</div>
<div id="collapseOne" class="accordion-body collapse">
<div class="accordion-inner">
Customer list
</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
My form
</a>
</div>
<div id="collapseTwo" class="accordion-body collapse">
<div class="accordion-inner">
<form novalidate data-ng-submit="certificateFormSubmit()">
Some form
</form>
</div>
</div>
</div>
<div class="accordion-group">
<div class="accordion-heading">
<a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseThree">
Title for other content
</a>
</div>
<div id="collapseThree" class="accordion-body collapse">
<div class="accordion-inner">
Some other content
</div>
</div>
</div>
</div>
,這是我的指令的簽名:我試圖創建一個小提琴
app.directive('certificateEdit', function ($q, ProductService, CustomerService, CertificateService) {
return {
restrict: 'E',
templateUrl: '/Certificate/Add',
scope: {
certificate: '=',
customerId: '=',
visible: '=',
onCertificateSaved: '&'
},
controller: function ($scope, $element, $attrs) {
// based on the certificate attribute value, I want to expand a accordion panel
});
,但我不能讓小提琴工作。我花了兩個小時創建一個小提琴,但我不能得到指令工作..
我想我要關於指令的vaque。我的指令顯示了一個HTML頁面,並在該頁面上有這個手風琴。手風琴被另一個div包裹。我嘗試過'angular.element',但沒有成功.. – Martijn
您可以擁有該手風琴的ID,並且可以使用angular.element展開或摺疊。它更好地創建你的問題小提琴,以便我可以輕鬆地幫助你。 –
我知道,我已經嘗試過'angular.element(「#collapseTwo」)。collapse('show');'但那不起作用。我想創建一個小提琴,但我沒有讓我的問題工作。我嘗試模擬那裏的問題,但我卡住:( – Martijn