我正在将 Angular JS 用于多页注册站点。(有了这个很棒的教程:http ://scotch.io/tutorials/javascript/angularjs-multi-step-form-using-ui-router )
我现在想在其中一个页面(http://bootstrapformhelpers.com/country/#jquery-plugins)中使用 Bootstrap Formhelper 国家选择器,如下所示:
<div ui-view>
...
<div class="bfh-selectbox bfh-countries" data-country="AT" data-flags="true"></div>
...
</div>
但它不起作用。国家选择器不显示(高度:0)。
如果我将国家/地区选择器放在 de ui-view div 之外,则选择器可以工作。但我想把它放在 ui-view div 中:
<div class="bfh-selectbox bfh-countries" data-country="AT" data-flags="true"></div>
<div ui-view>
...
</div>
出于某种原因,angularJS 指令 ui-view 正在破坏国家/地区选择器。
有谁知道为什么会这样?
最好的问候亚尼克
编辑:
我的进口:
<link rel="stylesheet" href="assets/css/bootstrap.min.css">
<link rel="stylesheet" href="style.css">
<script src="assets/js/angular.js"></script>
<script src="assets/js/angular-animate.js"></script>
<script src="assets/js/angular-ui-router.min.js"></script>
<script src="assets/js/angular-animate.js"></script>
<script src="app.js"></script>
<!-- Bootstrap -->
<script src="assets/js/jquery-1.11.1.min.js"></script>
<link rel="stylesheet" href="assets/css/bootstrap-theme.min.css">
<script src="assets/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="assets/css/bootstrap-formhelpers.min.css">
<script src="assets/js/bootstrap-formhelpers.min.js"></script>
<script src="assets/js/bootstrap-formhelpers-states.js"></script>
<script src="assets/js/bootstrap-formhelpers-countries.de-DE.js"></script>
<script src="assets/js/bootstrap-formhelpers-countries.js"></script>
编辑2:
我现在使用指令进行初始化。奇怪的想法是这段代码有效:
angular.module("formApp").directive('nationpicker', function ($parse) {
return {
restrict: 'A',
replace: false,
transclude: false,
link: function (scope, element, attrs) {
element.append('<select id="countries1" class="form-control"></select>');
$('#countries1').bfhcountries({flags:true})
}
};
但是这段代码不起作用:
angular.module("formApp").directive('nationpicker', function ($parse) {
return {
restrict: 'A',
replace: false,
transclude: false,
link: function (scope, element, attrs) {
element.append('<div id="country" class="bfh-selectbox bfh-countries" data-country="AT" data-flags="true"></div>');
$('#country').bfhcountries({flags:true})
}
};
实际上,这些只是 Bootstrap Formhelper 的不同示例(请参阅顶部的链接)
第一个是 3.example 第二个不起作用的代码来自我喜欢的 4.Example。
谁能告诉我为什么这不适用于 4.Example?