1. 程式人生 > >如何把{***}替換成下劃線的樣式。然後把指定的內容放在線上。做出選擇題填上了選項答案的樣式?

如何把{***}替換成下劃線的樣式。然後把指定的內容放在線上。做出選擇題填上了選項答案的樣式?

想要實現的效果是把下面的題目中的{***}。替換成上面的答案,要一一對應的。最後的效果是,橫線上面是答案。

這裡涉及正則的替換。並且是第一次替換的是questionstemold裡面的{***},第二次替換的是你剛才替換裡面的{***}。因為每次替換都是隻能從開頭往後找到第一個,也不是全域性的替換。

 

this.resource=res.data;    //res.data代表從介面中獲取的資料

var fillanswer=JSON.parse(this.resource.fillanswer);    //JSON 字串轉換後的物件
                              for(var i  in fillanswer){
                                  if(i==0)

{
                                   this.questionstem=this.resource.questionstemold.replace('{***}','<span style="border-bottom:1px solid #1fa0fd;color:#67c23a">'+fillanswer[i]+'
</span>');    //這裡最關鍵的,第一轉變的是介面中的那個資料。並且因為要加上下劃線的樣式所以這裡加了html的內容。
                                  }
                                  else
{
                                   this.questionstem=this.questionstem.replace('{***}','<span style="border-bottom:1px solid #1fa0fd;color:#67c23a">'+fillanswer[i]+'</span>');  //這次轉變的是上一步下標為o的那個裡面的{***}的字元
                                  }
                                  
                              }

頁面上直接寫<div v-html="questionstem" ></div>就可以啦