根据值更改 span 标签的颜色

0 html javascript jinja2

message我想更改以下 HTML 中变量 的颜色:

<span id="mess" style="visibility:visible;">
                <text id="tex">{{ message }}</text>
</span
Run Code Online (Sandbox Code Playgroud)

我将 Jinja2 与 Flask - Python 一起使用来将值传递给{{ message }} 变量。我尝试这样做的方法如下:

$(document).ready(function(){

            if (document.getElementById('tex').value == 'Message sent !')
            {
                document.getElementById('tex').setAttribute("style", "color:green;");
            }
            else
            {
                document.getElementById('tex').setAttribute("style", "color:red;");
            }
});
Run Code Online (Sandbox Code Playgroud)

的结果document.getElementById('tex').value总是undefined和文本的颜色message始终为红色。

有什么方法可以实现这一点吗?先感谢您。

小智 5

让我们使用包含选择器。

$(document).ready(function() {
  if ($('#tex:contains("Message sent !")').length) {
    $('#tex').css('color', 'green');
  } else {
    $('#tex').css('color', 'red');
  }
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="mess" style="visibility:visible;">
  <text id="tex">Message sent !</span>
</span>
Run Code Online (Sandbox Code Playgroud)