【问题标题】:Reading and formatting Access data读取和格式化访问数据
【发布时间】:2013-05-07 15:49:37
【问题描述】:

我正在使用 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/>';
}

但这不适用于访问数据库。或者我无法让它工作。有什么想法吗?

我正在使用的 HTA 和 .mdb 文件:link1link2

【问题讨论】:

    标签: javascript html database ms-access hta


    【解决方案1】:

    如果歌词在带有硬换行符的备注字段中,那么行终止符几乎肯定是&lt;cr&gt;&lt;lf&gt;,因此请尝试以下操作:

    box.innerHTML = '<a id="miseryBusiness">' + lyrics.replace(/\r\n/g, '<br/>');
    

    【讨论】:

    • @akinuri 对不起,我想我误解了你的问题。是不是可以从 .mdb 文件中检索文本,但格式不符合您的喜好?
    • 没错。我可以使用 innerText 获取文本并更改 div 的内容,但我想使用 innerHTML 为文本添加锚点和换行符。
    猜你喜欢
    • 2016-05-19
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 2013-08-13
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多