Sharepoint 2010 中文本到 Html 的转换

Text to Html conversion in Sharepoint 2010

我有一个包含大约 198 个项目的 SharePoint 2010 列表。对于前 30 项 Text to Html Javascript 函数成功地将文本代码转换为 Html 但是当我接下来尝试 select 31 项并继续使用分页功能无法转换 Html 并仅显示文本代码。有没有人有方便的代码来完成这项工作?下面是 SharePoint 2010 中使用的代码。谢谢。

<script type="text/javascript">
function TextToHTML(NodeSet, HTMLregexp) {
var CellContent = "";
var i=0;
while (i < NodeSet.length){
try {
CellContent = NodeSet[i].innerText || NodeSet[i].textContent;
if (HTMLregexp.test(CellContent)) {NodeSet[i].innerHTML = CellContent;}
} 
catch(err){}
i=i+1;
}
}

// Calendar views
var regexpA = new RegExp("\s*<([a-zA-Z]*)(.|\s)*/\1?>\s*");
TextToHTML(document.getElementsByTagName("a"),regexpA);

// List views
var regexpTD = new RegExp("^\s*<([a-zA-Z]*)(.|\s)*/\1?>\s*$");
TextToHTML(document.getElementsByTagName("TD"),regexpTD);

// This function is call continuesly every 100ms until the length of the main field changes
// after which the convert text to HTML is executed.
//
var postElemLength = 0;
function PostConvertToHtml() 
{
     if (postElemLength == document.getElementsByTagName("TD").length)
     {
          setTimeout(PostConvertToHtml,100);
     }
     else
     {
          var regexpTD = new RegExp("^\s*<([a-zA-Z]*)(.|\s)*/\1?>\s*$");
          TextToHTML(document.getElementsByTagName("TD"),regexpTD);
     }
}

// Grouped list views
ExpGroupRenderData = (function (old) {
    return function (htmlToRender, groupName, isLoaded) {

    var result = old(htmlToRender, groupName, isLoaded);
    var regexpTD = new RegExp("^\s*<([a-zA-Z]*)(.|\s)*/\1?>\s*$");
    TextToHTML(document.getElementsByTagName("TD"),regexpTD);

    // start the periodic callback to check when the element has been changed
    if(isLoaded == 'false')
        {
        postElemLength = document.getElementsByTagName("TD").length;
        setTimeout(PostConvertToHtml,100);
        }
    };
})(ExpGroupRenderData);

// Preview pane views
if (typeof(showpreview1)=="function") {
showpreview1 = (function (old) {
    return function (o) {
    var result = old(o);
    var regexpTD = new RegExp("^\s*<([a-zA-Z]*)(.|\s)*/\1?>\s*$");
    TextToHTML(document.getElementsByTagName("TD"),regexpTD);
    };
})(showpreview1);
}</script>

下面是生成的文本代码,需要转换为Html。谢谢

="<div style='position:relative;display:inline-block;width:100%;'>
    <div style='width:100%;display:inline-block;text-align:center;border:1px solid "&Project_Status_clr&";position:absolute;color:"&Project_Status_clr&";'> "&Project_Status&"
    </div>
    <div style='display:inline-block;width: 100%;background-color:"&Project_Status_clr&";text-align:center;border:1px solid;z-index:-1;filter:alpha(opacity=20);opacity:0.2;'>"&Project_Status&"
    </div>
</div>"

在 SharePoint 2010 中的计算列中生成 HTML 的字符串时,您可以将计算列的值类型更改为 "Number" 以使 HTML 呈现在列表中查看。