0

我已经搜索了将近一个小时,但仍然没有接近答案。基本上 - 我想单击一个 HTML 单元格,并获取该 HTML 单元格的当前值,并将该值分配给一个 VBScript 变量。老实说,如果有人能告诉我如何做第一步,我会很高兴。像这样,仅在 VBScript 中 -通过单击它来获取一行中的 HTML 表格单元格值

这里唯一的问题是该表是在脚本中完整生成的,然后放置在 Span 标记中。

任何帮助都会得到极大的应用。

编辑:好的,这就是我现在正在运行的内容。现在已经敲了一个多小时了:

    Sub Display_Click
Dim conn, str1
MainTitle.InnerHTML = "<h2>Main Call Queue</h2>"
Set conn = CreateObject("ADODB.Connection")
conn.Open "DSN=Login"
Set rsData = conn.Execute("SELECT * FROM MainTable WHERE CallStat='Open' ORDER BY P_ID DESC;")
str1 = "<table border=1 cellpadding=5><tr><th>Call Id</th><th>Full Name</th><th>Postcode</th><th>Site Code</th><th>Problem Title</th><th>Category</th><th>SubCategory</th><th>Call Status</th></tr>"
Do Until rsData.EOF = True
str1 = str1 & "<tr onClick=" & chr(34) & "Cell ME" & chr(34) & "><td>" & rsData("P_Id") & "</td><td>" & rsData("FirstN") & "</td><td>" & rsData("PostCode") & "</td><td>" & rsData("SiteNumber") & "</td><td>" & rsData("PTitle") & "</td><td>" & rsData("PCat") & "</td><td>" & rsData("SCat") & "</td><td>" & rsData("CallStat") & "</td></tr>"
rsData.moveNext
Loop
str1 = str1 & "</table>"
MainDisplay.InnerHTML = str1
conn.Close
Call CheckState
End Sub

我确信错误就在这个块的某个地方。表格生成了 3 行,我得到了 3 次错误。

4

2 回答 2

0

你能影响生成的元素(以便生成带有附加属性的元素)吗?如果是这样,类似以下的东西应该可以工作。

脚本:

Sub Foo(obj)
  MsgBox obj.innerHtml
End Sub

HTML:

<table id="tableID">
  <tr>
    <td onClick="Foo Me">row 1, cell 1</td>
    <td onClick="Foo Me">row 1, cell 2</td>
  </tr>
  <tr>
    <td onClick="Foo Me">row 2, cell 1</td>
    <td onClick="Foo Me">row 2, cell 2</td>
  </tr>
</table>

该属性onClick="..."将处理点击事件的过程或函数添加到标签。Foo()是一个接受一个参数 ( obj) 的过程。Me是对发生单击事件的对象的引用(请参见此处)。该调用将对元素Foo Me的引用传递给过程,以便过程有效地运行。<td>FooMsgBox Me.innerHtml

于 2013-05-27T11:04:41.093 回答
-1

删除chr(34)并在 之后插入一个函数onClick来存储值。

"onClick = function()" not chr(34) & "Cell Me" & Chr(34) 
于 2016-04-28T18:48:29.030 回答