<script language="JavaScript">
var testActiveX1 = null; //对象1
var res1;var testActiveX2 = null; //对象2
var res2; function DetectActiveX()
{
try
{
testActiveX1 = new ActiveXObject("test.Objecttest");
res1 = testActiveX1.InitInfo("tt1"); if(res1 == 0)
{
alert("初始化tt1失败!");
} testActiveX2 = new ActiveXObject("test.Objecttest");
res2 = testActiveX2.InitInfo("tt2"); if(res == 0)
{
alert("初始化tt2失败!");
}
}
catch(e)
{
alert("有问题!");
}
}
function PrintMsg()
{
try
{
comActiveX1.PrintInfo("111");
comActiveX2.PrintInfo("222");
}
catch(e)
{
alert("有问题了!");
return false;
}
}
</script>在InitInfo函数中,日志格式是: init对象为:对象名
在这个PrintInfo函数中,是打印出来的信息格式为: 对象名 字符串上面的js运行日志是:
init对象为:tt1
init对象为:tt2
tt2 111
tt2 222这结果明显不是我所想要的,我想要的结果应该是
init对象为:tt1
init对象为:tt2
tt1 111
tt2 222请问大家,这是上面原因呢。
var testActiveX1 = null; //对象1
var res1;var testActiveX2 = null; //对象2
var res2; function DetectActiveX()
{
try
{
testActiveX1 = new ActiveXObject("test.Objecttest");
res1 = testActiveX1.InitInfo("tt1"); if(res1 == 0)
{
alert("初始化tt1失败!");
} testActiveX2 = new ActiveXObject("test.Objecttest");
res2 = testActiveX2.InitInfo("tt2"); if(res == 0)
{
alert("初始化tt2失败!");
}
}
catch(e)
{
alert("有问题!");
}
}
function PrintMsg()
{
try
{
comActiveX1.PrintInfo("111");
comActiveX2.PrintInfo("222");
}
catch(e)
{
alert("有问题了!");
return false;
}
}
</script>在InitInfo函数中,日志格式是: init对象为:对象名
在这个PrintInfo函数中,是打印出来的信息格式为: 对象名 字符串上面的js运行日志是:
init对象为:tt1
init对象为:tt2
tt2 111
tt2 222这结果明显不是我所想要的,我想要的结果应该是
init对象为:tt1
init对象为:tt2
tt1 111
tt2 222请问大家,这是上面原因呢。
代码不全,且乱七八糟的,不明真想,日志,是由test.Objecttest这个组件打印的?
其他的看不懂
就是这个意思日志是由test.Objecttest这个组件打印的
String obj;
InitInfo(String s)
{
obj = s;
//输出信息为: init对象为:s
}
PrintInfo(String s)
{
//输出信息为: obj s
}然后我在js里new了两个ActiveXObject对象testActiveX1和testActiveX2,再调用控件里的函数,顺序如下:
testActiveX1 = new ActiveXObject("test.Objecttest");
testActiveX1.InitInfo("tt1");testActiveX2 = new ActiveXObject("test.Objecttest");
testActiveX2.InitInfo("tt2");
再调用PrintInfo()函数
testActiveX1.PrintInfo("test1");
testActiveX2.PrintInfo("test2");根据我的想法的话打印出的日志为
init对象为:tt1
init对象为:tt2
tt1 test1
tt2 test2但是实际上打印出的为:
init对象为:tt1
init对象为:tt2
tt2 test1
tt2 test2也就是testActiveX2把testActiveX1给覆盖掉了,这是什么原因呢,该如何做呢
testActiveX1 = new ActiveXObject("test.Objecttest");
testActiveX1.InitInfo("tt1");
testActiveX1.PrintInfo("test1");
testActiveX1 = null;
testActiveX2 = new ActiveXObject("test.Objecttest");
testActiveX2.InitInfo("tt2");
testActiveX2.PrintInfo("test2");
如果这样的话就不符合我的想法了啊
我的想法是怎么能实现testActiveX1和testActiveX2的共存呢