我正在使用JavaScript和HTA来读取本地访问数据库(.mdb)中的数据但有一个小问题。我的JavaScript代码是这样的:
function miseryBusiness() {
var box = document.getElementById("lyrics");
box.innerHTML = "";
var db = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='paramore.mdb'";
var adoConn = new ActiveXObject("ADODB.Connection");
var adoRS = new ActiveXObject("ADODB.Recordset");
adoConn.Open(db);
adoRS.Open("SELECT * from 2007_RIOT WHERE track=4", adoConn, 1, 3);
var lyrics = adoRS.Fields("lyrics").value;
box.innerText = lyrics;
adoRS.Close();
adoConn.Close();
}
我在页面中有一个id =“lyrics”的div。函数获取指定单元格的值,并将div的内部文本更改为该值。
我想要做的是使用innerHTML而不是innerText。如果我使用内部HTML,我将单元格的值作为单行。我想在每一行的末尾添加换行符。也是文本开头的锚。
如果我从.txt文件中获取文本,我会使用
while(!lyrics.AtEndOfStream) {
box.innerHTML += '<a id="miseryBusiness">' + lyrics.ReadLine() + '<br/>';
}
但这不适用于Access数据库。或者我无法让它发挥作用。有什么想法吗?
答案 0 :(得分:1)
如果歌词位于具有强制换行符的备注字段中,则行终止符几乎肯定是<cr><lf>
,请尝试以下操作:
box.innerHTML = '<a id="miseryBusiness">' + lyrics.replace(/\r\n/g, '<br/>');