替换后的字符串在窗口中显示标记

时间:2015-05-14 03:59:21

标签: javascript jquery html regex

我用标记的单词替换了div的一部分(内容可编辑)。它不仅仅显示该新单词的内容,而是显示标签。

以下是div的原始内容:

  

这是在< div>内标签,我想替换这[[var12]]

这就是我想要的样子:

  

这是在< div>内标签,我想替换 var12

然而,它最终看起来像这样:

  

这是在< div>内标签,我想替换这个< span> var12< / span>

这是我使用的代码:

Buildfile: C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\build.xml
init:
pre.compile.test:
     [echo] Stax Availability= true
     [echo] Axis2 Availability= true
compile.src:
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\build.xml:46: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 630 source files to C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\build\classes
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\conversion\rule\ConversionType.java:10: incompatible types
    [javac] found   : javax.xml.bind.annotation.AccessType
    [javac] required: javax.xml.bind.annotation.XmlAccessType
    [javac] @XmlAccessorType(AccessType.FIELD)
    [javac]                            ^
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\conversion\rule\ParameterType.java:9: incompatible types
    [javac] found   : javax.xml.bind.annotation.AccessType
    [javac] required: javax.xml.bind.annotation.XmlAccessType
    [javac] @XmlAccessorType(AccessType.FIELD)
    [javac]                            ^
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\conversion\rule\CounterType.java:9: incompatible types
    [javac] found   : javax.xml.bind.annotation.AccessType
    [javac] required: javax.xml.bind.annotation.XmlAccessType
    [javac] @XmlAccessorType(AccessType.FIELD)
    [javac]                            ^
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\conversion\rule\ParameterSetType.java:11: incompatible types
    [javac] found   : javax.xml.bind.annotation.AccessType
    [javac] required: javax.xml.bind.annotation.XmlAccessType
    [javac] @XmlAccessorType(AccessType.FIELD)
    [javac]                            ^
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\conversion\rule\CounterSetType.java:11: incompatible types
    [javac] found   : javax.xml.bind.annotation.AccessType
    [javac] required: javax.xml.bind.annotation.XmlAccessType
    [javac] @XmlAccessorType(AccessType.FIELD)
    [javac]                            ^
    [javac] C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\conversion\rule\ConversionsType.java:11: incompatible types
    [javac] found   : javax.xml.bind.annotation.AccessType
    [javac] required: javax.xml.bind.annotation.XmlAccessType
    [javac] @XmlAccessorType(AccessType.FIELD)
    [javac]                            ^
    [javac] Note: C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\src\com\cbas\services\util\PartyUtil.java uses or overrides a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 6 errors

BUILD FAILED
C:\Users\phmasu\workspace\CBASServices\branches\CR-XX-SeasonPass\build.xml:46: Compile failed; see the compiler error output for details.

Total time: 8 seconds

1 个答案:

答案 0 :(得分:4)

它看起来像是因为你已经明确告诉它使用.text()来逃避html。如果要插入html,可以使用.html()

$(this).html($(this).text().replace(pattern, tagged));

来自.text() docs

  

我们需要注意,此方法会根据需要转义提供的字符串,以便在HTML中正确呈现。为此,它调用DOM方法.createTextNode(),不会将字符串解释为HTML。