我无法在设备中触发带Ionic Framework的输入类型文件

时间:2016-08-26 17:03:51

标签: android angularjs ionic-framework

我可能有一个星期来解决这个问题。

当我在表单中使用输入[type =“file”] 字段时,在 Ionic Lab 中,它可以正常工作。在 Android模拟器中,它可以正常工作。但是,当我在手机中运行应用程序时,我点击/点击该字段,没有任何反应。按下按钮,但不显示filepicker对话框。

我的输入看起来像:

<input class="" id="image" type="file" name="image" ng-model="data.image" file="file"onchange="angular.element(this).scope().fileNameChanged(this.files)" style="display:none;" />

我尝试了不同的东西,在JS中添加了一个触发click事件的按钮:

<button type="button" class="button icon ion-filing" ng-click="openFileDialog()">Select</button>

方法 openFileDialog()仅执行此操作:

   $scope.openFileDialog = function() {
      alert('Test Open File DIalog');
      ionic.trigger('click', { target: document.getElementById('image')});
    };

单击按钮时会显示警报,但不会触发事件。同样,它在Ionic Lab和模拟器中工作正常,但不在我的设备中。我也尝试过测试这个项目:

https://github.com/krystiangw/filepicker-ionic-example

但结果是一样的。

编辑1:

太令人沮丧了。我无法让它发挥作用。

我尝试制作一个简单的空白项目,只有:

  <ion-content>
          <input type="file" />
      </ion-content>

没有别的。再次,在 Ionic Lab 模拟器中,打开文件选择对话框没有问题,但当我在手机中运行时:

ionic run android --device

什么都没发生。我不知道是不是我的手机还是有些限制。

编辑2:

经过一番调查后,我发现了这个问题,没有解决方案:

https://issues.apache.org/jira/browse/CB-5294

我的Android版本 4.4.2 但是,这在Android版本中是否永远不会有效?有人知道如果至少它已在以后的版本中修复过吗?我的模拟器有 Android 6 ,就我可以测试而言,它可以正常工作。

0 个答案:

没有答案