#javascript #jquery #xslt
Вопрос:
Я использую XML и XSLT и преобразую их в HTML. и передаю содержимое html в функцию javascript. но проблема в том, что вызывается класс стиля, и применяются сквозные строки и подчеркивания, но не цвет фона, я также использовал !важно, что цвет фона по-прежнему не применяется . Кто-нибудь может мне в этом помочь.
My function
$(function () {
$("#Button1").click(function () {
$('#displayCompare2').addClass('ins','del');
var original = document.getElementById("displayCompare").innerHTML;
var changed = document.getElementById("displayCompare2").innerHTML;
let output = htmldiff(original, changed);
document.getElementById("displayCompare2").innerHTML = output;
})
})
Мой класс по стилю
.ins {
text-decoration: none;
background-color: #d4fcbc;
}
.del {
text-decoration: line-through;
background-color: #fbb6c2 ;
}
Мой XSLT
<?xml version="1.0" encoding="iso-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
<xsl:template match="/">
<html>
<body >
<xsl:for-each select="table/tr">
<div style="padding:4px">
<span style="font-weight:bold;">
<xsl:value-of select="td1"/>
</span>
</div>
<div style="padding:4px" >
<xsl:if test="not(contains(td2, '|'))">
<xsl:value-of select="td2"/>
</xsl:if>
<xsl:if test="contains(td2, '|')">
<xsl:value-of select="substring-after(td2, '|')"/>
</xsl:if>
</div>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Комментарии:
1.
$('#response2id').addClass('ins','del');
это недопустимо. Проверьте консоль.2. $(‘.response2id’).addClass(‘inc del’);
3.
addClass()
— Один или несколько классов, разделенных пробелами , которые будут добавлены в атрибут класса каждого сопоставленного элемента.4. @pavel это не синтаксическая ошибка, поэтому в консоли не было бы сообщения, просто игнорировался 2-й параметр.
5. Паван ,Фридомн и чираг Спасибо за быстрый ответ , я попробовал $(‘.response2id’).addClass(‘inc del’); все тот же результат, применяется только оформление текста