javascript - 按钮点击只有效一次

标签 javascript jquery html

我有一个按钮,一旦单击它,它就会将一个新的输入元素附加到“forPassengers”div 的末尾,但它只能工作一次。单击后,它就不能再单击了。

Controller :

app
.controller('multipleFlightsController', function ($scope, $http, $location) {
    $scope.addPassenger = function () {
        document.getElementById('forPassengers')
            .innerHTML += '<input class="form-control airport ng-pristine ng-untouched ng-valid" type="text" ng-model="additionalPassengers" placeholder="#" tabindex="0" aria-invalid="false"> ';
    };
 /*..... more code*/

HTML:

<div id="forPassengers" class="col-lg-2 form-group">
    <label># of other passengers</label>
    <button id="buttonForPassenger" type="button" class="btnBlue" ng-click="addPassenger()">Add passenger</button>
    <input class="form-control airport" type="text" ng-model="additionalPassengers" placeholder="#">
    <input class="form-control airport" type="text" ng-model="additionalPassengers" placeholder="#">
 </div>

工作解决方案(编辑)

最终解决我的问题的实际上是使用 AngularJS 而不是通过 document.getElementById 函数访问输入元素。

最佳答案

使用你的 $scope:

$scope.passengers = [];
$scope.addPassenger = function () {
    $scope.passengers.push({});
};

然后用 ng-repeat:

<!-- use ng-repeat... -->
<input ng-repeat="passenger in passengers" class="form-control airport ng-pristine ng-untouched ng-valid" type="text" ng-model="additionalPassengers" placeholder="#" tabindex="0" aria-invalid="false">

关于javascript - 按钮点击只有效一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39438469/

相关文章:

html - 是否可以模拟旧版本的 Firefox

jquery - 如何在按钮上重叠滑出导航?

javascript - 匹配并用四个空格替换行首的所有制表符

javascript - Angular 指令父范围

javascript - 视频模态 Bootstrap

javascript - Laravel 尝试从数据库获取导航栏列表

javascript - 如果单击导航栏 ID,则 jQuery Mobile 发出警报

javascript - 悬停菜单jquery上下滑动太快

html - 有没有办法链接 CSS 中的样式表而不是每个 HTML 页面?

javascript - js while(true){} 阻塞事件循环