我在用JS提取的h1标签中有一个问题,像这样...

var question = document.getElementsByTagName("h1");


如果问题(h1)包含“全部勾选”字样,我只希望“全部勾选”(而不是问题的任何其他部分)被涂成绿色。所以我开始这样...

if ($("question:contains('tick all')").length) {

};


但是我不确定如何进一步编码。请帮忙

在我的HTML文件中,我具有以下Jinja模板代码...

<h1>{{ question_text }}</h1>

最佳答案

如果您只有一个h1标签,则可以像下面这样使用

var ques = $('h1').text();
if(ques.indexOf('tick all') >= 0){
  ques = ques.replace("tick all","<span style='color:green'>tick all</span>");
  $('h1').html(ques);
}


对于多个h1标签,您可以.each函数,

$('h1').each(function(){
var ques = $(this).text();
    if(ques.indexOf('tick all') >= 0){
      ques = ques.replace("tick all","<span style='color:green'>tick all</span>");
      $(this).html(ques);
    }
}

关于javascript - 在Jinja模板中时,更改h1标签中特定部分的样式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53499666/

10-12 12:24