gpt4 book ai didi

javascript - AngularJS中触发输入文件点击事件

转载 作者:技术小花猫 更新时间:2023-10-29 12:17:06 25 4
gpt4 key购买 nike

我正在尝试模拟 AngularJS 中文件输入的点击事件。我看过working jQuery examples ,但我不想使用 jQuery。

'use strict';

angular.module('MyApp', []).

controller('MyCtrl', function($scope) {
$scope.click = function() {
setTimeout(function() {
var element = angular.element(document.getElementById('input'));
element.triggerHandler('click');
$scope.clicked = true;
}, 0);
};
});
<script src="https://code.angularjs.org/1.3.14/angular.js"></script>
<div ng-app="MyApp" ng-controller="MyCtrl">
<input id="input" type="file"/>
<button ng-click="click()">Click me!</button>
<div ng-if="clicked">Clicked</div>
</div>

注意:由于某些原因需要按两次按钮才能触发超时功能。

我正在使用 setTimeout 因为 this post .

如何仅使用 AngularJS/vanilla JavaScript 以编程方式单击文件输入?

最佳答案

你可以简单地使用

 <button type="button" onclick="document.getElementById('input').click()">Click me!</button>

$scope.click = function() {
setTimeout(function() {
document.getElementById('input').click()
$scope.clicked = true;
}, 0);
};

关于javascript - AngularJS中触发输入文件点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28762293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com