none
ASP.NET中用Javascript调用ocx控件的问题? RRS feed

  • 问题

  • 调用的ocx控件的事件,我写在一个按钮中:

    第一种写法通过了:

    <input type="button" value="读身份证" id="ReadCardBtn"  onclick="dtm11.CommOpen();dtm11.CommCommand('12804',' '); alert(dtm11.GetDataStr());" >

    第二种方法通不过(错误:'dtm11'未定义):

    <script type="text/javascript">

     function a()
            {
                dtm11.CommOpen();dtm11.CommCommand('12804',' '); alert(dtm11.GetDataStr());
            }
        </script>

    <input type="button" value="读身份证" id="ReadCardBtn"  onclick="a();" >

    请问这是为什么?大家给点思路.谢谢.

    2012年6月2日 7:25

答案

  • 第二种方法(在前面必须声明一个变量,并把对象赋给该变量,就OK了):

    <script type="text/javascript">

     function a()
            {

                var dtm11 = document.getElementById("dtm");

                dtm11.CommOpen();dtm11.CommCommand('12804',' '); alert(dtm11.GetDataStr());
            }
        </script>

    <input type="button" value="读身份证" id="ReadCardBtn"  onclick="a();" >

    加上上面一段的黑体字就OK了。

    • 已标记为答案 hu_772000 2012年6月4日 6:49
    2012年6月4日 6:48

全部回复

  • dtm11都没有定义?

    var dtm11; dtm11.CommOpen();dtm11.CommCommand('12804',' '); alert(dtm11.GetDataStr());

    2012年6月3日 9:53
  • 你好,

    可以尝试把script放到input的后面,比如

    <input ... />

    <script>...</script>

    2012年6月4日 4:47
    版主
  • 第二种方法(在前面必须声明一个变量,并把对象赋给该变量,就OK了):

    <script type="text/javascript">

     function a()
            {

                var dtm11 = document.getElementById("dtm");

                dtm11.CommOpen();dtm11.CommCommand('12804',' '); alert(dtm11.GetDataStr());
            }
        </script>

    <input type="button" value="读身份证" id="ReadCardBtn"  onclick="a();" >

    加上上面一段的黑体字就OK了。

    • 已标记为答案 hu_772000 2012年6月4日 6:49
    2012年6月4日 6:48