调用OCX读写白卡,使用的是JS代码,读写卡的JS代码如下
读卡(readCard.html)
<html>
<head>
<title>读白卡卡号</title>
<OBJECT id="CardReader" classid = clsid:43E4D4FC-3CD8-459A-AAA1-698C1288DE93>
<PARAM NAME="_Version" VALUE="65536"><PARAM NAME="_ExtentX" VALUE="2646">
<PARAM NAME="_ExtentY" VALUE="1323"><PARAM NAME="_StockProps" VALUE="0">
</OBJECT>
</head>
<body bgcolor="FFFFFF">
<form id="readForm" action="" method="post">
<table width="500" border="1px">
<tr>
<td width="30%" align="right">
请选择写卡器:
</td>
<td>
<select id="cardList" style="width:250"></select>
</td>
</tr>
<tr>
<td width="30%" align="right">
手机号码:
</td>
<td>
<input type="text" id="phoneNum" style="width:250" readonly="true">
</td>
</tr>
<tr>
<td width="30%" align="right">
订单号:
</td>
<td>
<input type="text" id="orderNum" style="width:250" readonly="true">
</td>
</tr>
<tr>
<td width="30%" align="right">
<input type="button" value="读取卡号" οnclick="callGetCardNum();">
</td>
<td>
<input type="text" id="cardNum" style="width:250" readonly="true">
</td>
</tr>
<tr>
<td width="30%" align="right">
<input type="button" value="确认" οnclick="submitInfo();">
</td>
<td></td>
</tr>
</table>
</form>
</body>
</html>
<script type="text/javascript">
/**
* 列出写卡器
*/
function doListCard() {
var obj = document.getElementById("CardReader");
var str = obj.ListCard();
if(str == null || str == "") {
alert("没有取到读卡器,请检查控件是否注册或者驱动是否安装或者连接是否正常!");
return;
}
//动态加载下拉框,将写卡器列出来
if(str != null && str != "") {
var list = document.getElementById("cardList");
for(var i = list.options.length-1; i >= 0; i--) {
list.remove(i);
}
var strArray =str.split(";");
for(var i = 0; i < strArray.length; i++) {
var newOption = document.createElement("option");
newOption.setAttribute("value", strArray[i]);
newOption.appendChild(document.createTextNode(strArray[i]));
list.appendChild(newOption);
}
}
}
doListCard();
/**
* 读取IMSI,判断是否为白卡
*/
function getIMSI() {
var str = "";
str = doSendCard("A0A40000023F00");
if(str == "-1") {
alert("获取IMSI数据失败1!");
return false;
}
str = doSendCard("A0A40000027F20");
if(str == "-1") {
alert("获取IMSI数据失败2!");
return false;
}
str = doSendCard("A0A40000026F07");
if(str == "