【发布时间】:2019-04-28 14:22:04
【问题描述】:
我正在编写一个 VBScript/HTA 以在 for 循环中列出打印机。
document.write("<BUTTON onclick=SetDefaultPrinter('" & objItem.Name & "')>" & objItem.Name & "</BUTTON><BR>")
循环是创建按钮,文本是打印机的名称,onclick 事件具有应该传递给过程的值。
我希望打印出来的代码是
<BUTTON onclick=SetDefaultPrinter('Ms Print to PDF')>MS Print to PDF</BUTTON>
尝试了不同的方法,例如添加 chr(40) 和 chr(41) 而不是括号,但没有人尝试,我得到一个错误。
要么
Expected: ')'
或
Unterminated string constant
将完全相同的代码放入 MsgBox 会打印所需的结果。有人可以帮忙解释什么是错的吗?我想知道为什么它是错误的,正确的方法是什么,以及为什么。 一切都有其匹配的引号或括号,我可以在谷歌上找到,嵌套括号在这样的字符串中很好。所以我真的不明白为什么它会出错。当我运行脚本时,它仍然会输出 html,但会引发脚本错误。
注意:我有点期待有人质疑我代码的其他方面。我承认我不是最强大的编码员,并且会欢迎建议。比如给SetPrinterDefault()传一个值;怀疑我这样做的方式是正确的。在我的辩护中,我试图先解决这个问题,然后测试我是否正确地将值传递给它。边走边学..
【问题讨论】:
标签: vbscript