HTA:vbScript字符串内部的JavaScript函数会导致HTA中的错误?
-
14-10-2019 - |
题
我在HTA中都使用JavaScript/vbscript,并且正在为我的HTA接口构建VBS循环内部的桌子。当我简单地运行时:
strHTML = strHTML & "<tr>" &_
"<td><a id=""" & aName & """ href=""javascript:toggleRow('" & rowName & "','" & arrTemp(1) & "','" & aName & "')"">+ </a>" & arrTemp(1) & "</td>" & _
"<td>" & arrTemp(2) & "</td><td class='status'>" & _
"<img onclick=""displayRow()"" src='" & strStatus & "' border='0'></td></tr>" & _
"<tr id='" & rowName & "' style=""display:none;""><td id='" & arrTemp(1) & "' colspan=""3"">test</td></tr>"
...我的HTA显示得很好。但是,当我尝试将JavaScript函数添加到我的TR标签时,我会得到各种VBS错误:
strHTML = strHTML & "<tr onmouseover=""ChangeColor(this, true);"" onmouseout=""ChangeColor(this, false);"" onclick=""DoNav();"">" &_
"<td><a id=""" & aName & """ href=""javascript:toggleRow('" & rowName & "','" & arrTemp(1) & "','" & aName & "')"">+ </a>" & arrTemp(1) & "</td>" & _
"<td>" & arrTemp(2) & "</td><td class='status'>" & _
"<img onclick=""displayRow()"" src='" & strStatus & "' border='0'></td></tr>" & _
"<tr id='" & rowName & "' style=""display:none;""><td id='" & arrTemp(1) & "' colspan=""3"">test</td></tr>"
我敢肯定,我已经正确评论了额外的报价,但我无法正常工作。谁能在第一行看到我做错了什么?
编辑:此外,如果我将所有的所有on*事件都带有关联的4个引号,但请删除所有内部JavaScript函数,则页面加载正常,如果完全有帮助
解决方案
啊...找到答案。 HTA将功能解释为VBS函数。 javaScript的明确声明是什么诀窍:
strHTML = strHTML & "<tr onmouseover=""javascript:ChangeColor(this, true);"" onmouseout=""javascript:ChangeColor(this, false);"" onclick=""javascript:DoNav();"">" &_
"<td><a id=""" & aName & """ href=""javascript:toggleRow('" & rowName & "','" & arrTemp(1) & "','" & aName & "')"">+ </a>" & arrTemp(1) & "</td>" & _
"<td>" & arrTemp(2) & "</td><td class='status'>" & _
"<img src='" & strStatus & "' border='0'></td></tr>" & _
"<tr id='" & rowName & "' style=""display:none;""><td id='" & arrTemp(1) & "' colspan=""3"">test</td></tr>"
不隶属于 StackOverflow