我收到错误消息
extra characters after close-quote
while compiling
"puts $o "
<TR>
<TD align=\"center\" BGCOLOR = \"FFFFFF\" ><FONT COLOR =
\"black\">$rulename</FONT></TD>
<TD align=\"left\" BGCOLOR = \"F..."
("if" then script line 28)
这是在我输入下面的代码后发生的
<input type ="radio" value ="clear" name ="clear_waive">clear
<input type ="radio" value ="clear" name ="clear_waive">waive  
我想在 tcl 中由上述整个 HTML 代码形成的 Excel 图表中放置一个单选按钮, 它在我在“HTML 代码测试网站”尝试过的地方有效,但在 tcl 代码中却无效。
我尝试在 HTML TEST 网站(又名 liveweave.com)中测试“单选按钮”代码,它工作正常。 然而,当我将相同的代码放入 tcl 时,情况却并非如此。
我只想让代码在Excel图表上显示单选按钮,就像HTML测试网站一样。
您在某处存在正式语法错误,很可能是双引号字符前面缺少反斜杠。代码编辑器中的语法突出显示可以相当轻松地揭示可能的位置。
使用这样的结构可能会更好:
puts $o [subst {
<TR>
<TD align="center" BGCOLOR="#FFFFFF">
<FONT COLOR="black">$rulename</FONT>
</TD>
...
}]
像这样,大括号的内容是一个 HTML 片段,并遵循其中的语法规则 除了其中的 Tcl 替换。这比在双引号字符串中放置大量反斜杠更容易编写(和阅读!)。
执行此操作时,您应该注意替换的变量(和命令结果)将被解释为 HTML 片段;可能需要关键实体转义。或者可能不是;这可能就是你想要的;然而你确实需要意识到这一点。
string map
命令可以进行此类替换;把它放在助记符程序中,方便使用。