转义HTML文本

时间:2014-05-13 10:05:34

标签: html file-io livecode

我正在从堆栈中编写html文件。这有点令人痛苦,因为如果文件包含引号,我必须编写类似下面的内容。

 write "<div id=hidden-" & quote & myKanton & quote && "style=" & quote & "display:block;" &quote&&"class=" &quote & "popuptable" &quote& ">" & LF to file tOutputFileCH  

现在我必须再次添加很多HTML代码,我想知道是否有更简单的方法可以执行以下操作:

write escaped("my html numbers and "txt" with quotes") to file

我不需要html文本中的变量。

4 个答案:

答案 0 :(得分:0)

通常,人们会使用

这样的功能
function q theText
  replace "'" with quote in theText
  return theText
end q

可以用作

write q("<div id=hidden-'" & myKanton & "' style='display:block;'" & "class='popuptable'>" & LF) to file tOutputFileCH  

您可以使用上面示例中的字符串,但您也可以使用任何容器:

get q(myVariable)
put q(it) into field 1
put q(field 1) into field 2
put q(url myUrl) into url myOtherUrl
put q(the cProperty of me) into myVar
-- etc etc etc

如果更改q功能,也可以使用'或'代替'。

顺便说一下,我注意到你没有在引号中加入hidden-。你确定这是对的吗?

答案 1 :(得分:0)

HTML允许使用引号和单引号,因此您可以......

put "<div style='border:1px'>" into tHTML

LiveCode的format命令允许您转义双引号...

put format("my html numbers and \"txt\" with quotes") into tData

答案 2 :(得分:0)

现在正在运作。我将html行放在自定义堆栈属性中,并在编写文件时将其用作输入。完美的工作。它甚至似乎没有q功能。

  write ( the cMapOverlay of stack "AfaConverter" ) & LF to file tOutputFileCH 

我也试过了,因为

onmouseover="nhpup.popup($('#hidden-VS').html(), {'width': 400});" href="./kantone/index_kanton_VS.html"    

这是q没有适应性的问题,因为&#39;替换为&#34;这是一个问题。

答案 3 :(得分:0)

这里有一些很好的答案。我建议另一种方法。您可以使用引用功能,但方式略有不同:

function q pString
  return quote & pString & quote
end q

然后使用LiveCode merge()函数。 Merge评估[[]]中包含的任何LiveCode表达式或变量,并将其合并到封闭的引用文本中:

write merge("my html numbers and [[q("txt")]]") to file