您的位置:首页 > Web前端 > HTML

从html table中提取出数据通过vb写的activex导入本地

2005-06-16 23:23 627 查看
浏览器:
<html>
<object id="haha" classid="clsid:ECF56D19-8014-48A9-BBFD-C61AF40E579C" >
</object>
<script>
var Main_Tab = null;
var selArray="";
function ini()
{
Main_Tab = ExTable; //指向固定表
var selArray="";
var array_1 = new Array();
for(var i=0;i<Main_Tab.rows.length;i++)
{ array_1[i]=new Array();
for(var j=0;j<Main_Tab.rows[i].cells.length;j++)
array_1[i][j]=Main_Tab.rows[i].cells[j].innerText
}
alert(array_1);
haha.vivid(array_1);
}
</script>
extract all datas in table
<body onload=ini()>
<table border=1 id="ExTable">
<tr>
<td>标题一</td>
<td>标题二</td>
</tr>
<tr>
<td>tang20</td>
<td>tang21</td>
</tr>
<tr>
<td>tang30</td>
<td>tang31</td>
</tr>
</table>
</body>
</html>
--------------------------------------------------------------------------------------------------------------------------------
vb activex
功能:根据传来的参数在本地建表并且保存表体
Public Sub vivid(temp As String)
'通过前台的javascript传过来的是带有";"的String,用Split函数把string 装到数组中,Join可以把数组串成string
'数组的上限为ubound(数组名)
'将一维数组变成多维数组
Dim str1() As String
str1 = Split(temp, ",")
'vb中for 中的i每个都取到的
'怎样把一维数组构造成多维数组,为数作为参数传进来
Dim str2(0 To 2, 0 To 1) As String
Dim p As Integer
p = 0
For k = 0 To 2
For g = 0 To 1
str2(k, g) = str1(p)
p = p + 1
Next g
Next k
'vivid2 = str2(1, 1)
'在本地生成表,生成表头
Dim cat As New ADOX.Catalog
Dim rs As New ADODB.Recordset
Dim conn As New ADODB.Connection
Dim i As Integer
' pstr = "Provider=Microsoft.Jet.OLEDB.4.0;" '不能把这里的4.0改为3.51
pstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://tang2.mdb" '!还要改进,让用户自己选择存在本地的路径
cat.Create pstr '创建数据库
Dim tbl As New Table
cat.ActiveConnection = pstr
tbl.Name = "tangdb" '表的名称
' tbl.Columns.Append str2(0, 0), adInteger '表的第一个字段
tbl.Columns.Append str2(0, 0), adVarWChar, 8 '表的第二个字段
tbl.Columns.Append str2(0, 1), adVarWChar, 8 '表的第三个字段
cat.Tables.Append tbl '建立数据表
conn.Open pstr
rs.CursorLocation = adUseClient
rs.Open "tangdb", conn, adOpenKeyset, adLockPessimistic
For g2 = 1 To 2
rs.AddNew '往表中添加新记录
'插值
For g1 = 0 To 1
rs.Fields(g1).Value = str2(1, g1)
Next g1
rs.Update
rs.MoveNext
Next g2
End Sub
'************************************************************************************************************'
'-----------------------------------------------------------------------------------
'(2)从本地导出程序部分
Public Function test2() As Integer
Dim cnn As ADODB.Connection
Dim rstC As ADODB.Recordset
Set cnn = New ADODB.Connection
Dim temp As String
'改进:让用户自己选择路径
cnn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://firstdb.mdb"
Set rstC = New ADODB.Recordset
With rstC
Set .ActiveConnection = cnn
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
'.MaxRecords = 2
.Open "select * from tangdb"
End With
'关键是:怎样把从本地读出的文件中的字段中的值对应的放进html的table中,写成过程
test2 = 1
End Function
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: