ocx控件除了拥有功能方法外,有的控件还有事件回调,在vue中使用事件时需要特殊的技巧。

先来看下在传统项目中的使用方式:

<script LANGUAGE=javascript FOR=MSComm1 EVENT=OnComm>
    MSComm1_OnComm();
</script>

结合上篇文章中提到的iframe方式,我们可以很好的使用ocx控件的事件。但是有没有不借助iframe直接使用事件的方法呢?

答案是有的,那就是使用 attachEvent 或者 addEventListener 方法:

<script>
export default {
  mounted () {
    let ocxobj = document.getElementById('CVR_IDCard')
    ocxobj.attachEvent('DetectCallBack',this.callBack)
  },
  methods: {
     callBack (){
        console.log('ocx事件')
     }
  }
}
</script>

使用这种方式有一个前提是IE版本必须是IE8-10,8以下和10以上都是不行的。

Logo

前往低代码交流专区

更多推荐