數據庫中存放着HTML並附帶樣式,如何在界面上對已有的樣式進行修改


在工作中遇到這樣一個問題,數據庫中存放着HTML代碼,並且還帶有樣式,我要在界面上修改他已經寫好的樣式,例如把這個字段的字體改成微軟雅黑,數據庫中對應字段內容如下圖

在界面面上是直接把上圖這段HTML,放到界面上,這里用到了ko就是Knockoutjs,,里面的那句data-bind:html:JobDesc 中的html:JobDesc 效果跟@Html.Raw() 效果一樣,即使直接把數據庫中的HTML代碼插入到界面上。 代碼如下圖

要改掉里面的樣式:很簡單就是去覆蓋里面樣式,問題不在這,插進去的這段HTML,其實是

<div class="col-xs-9 as" data-bind="html:JobDesc">
</div>

的后代元素,我們要去修改他的樣式,就要這樣寫,用到了JQuery

$("div[class='col-xs-9 as']").find("*").css("font-family","Microsoft YaHei");

用到了這個方法find("*"),作用是  返回選中標簽的所有后代。

這是一種情況,

還有一種情況是數據庫中剛好這一段是沒有HTML標簽,只有文字,這種情況下就要加一句

$("div[class='col-xs-9 as']").css("font-family","Microsoft YaHei");

綜合起來就是在js中加上下面的代碼:

$(function(){
$("div[class='col-xs-9 as']").css("font-family","Microsoft YaHei");
$("div[class='col-xs-9 as']").find("*").css("font-family","Microsoft YaHei");
});

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM