Javascript 如何在HTML中将数组中的所有元素显示为可单击对象?
因此,我用javascript生成了一个小脚本,如图所示:Javascript 如何在HTML中将数组中的所有元素显示为可单击对象?,javascript,php,jquery,html,cordova,Javascript,Php,Jquery,Html,Cordova,因此,我用javascript生成了一个小脚本,如图所示: var txtFile = new XMLHttpRequest(); txtFile.open("GET", "http://www.drakedesign.co.uk/mdmarketing/uploads/date.txt", true); txtFile.onreadystatechange = function() { if (txtFile.readyState === 4) { // Makes sure the
var txtFile = new XMLHttpRequest();
txtFile.open("GET", "http://www.drakedesign.co.uk/mdmarketing/uploads/date.txt", true);
txtFile.onreadystatechange = function() {
if (txtFile.readyState === 4) { // Makes sure the document is ready to parse.
if( (txtFile.status == 200) || (txtFile.status == 0) ) { // Makes sure it's found the file.
allText = txtFile.responseText;
arrayOfLines = allText.match(/[^\r\n]+/g);
document.getElementById("date").innerHTML = arrayOfLines[0];
filename1 = (arrayOfLines[0] + ".csv");
res1 = filename1.replace("/","-");
res2 = res1.replace("/","-");
urlCsv = ("http://www.drakedesign.co.uk/mdmarketing/uploads/" + res2);
}
}
};
txtFile.send(null);
上述代码简单地解析每周更新的文本文档:
里面有一行一行写的日期,如下所示:
2016年4月16日
2016年4月9日
2016年4月2日
我在这里想问的是,我如何转换上面的脚本来解析文本文档,然后显示html文档中的每个元素,并使可视元素可单击,以便将我带到正确的日期
我走错方向了吗?有没有更有效的方法?我正在考虑对所有可能出现的日期进行硬编码。但我更愿意动态地这样做
事先非常感谢任何提供帮助的人
PS:我正在使用JQUERY!抱歉,之前忘记提到了。您的问题中没有包含
jQuery
标记,因此我假设您正在寻找一个简单的Javascript答案。对于您在回复中收到的每个日期,您可以将其转换为一个链接
,该链接将在您的页面上单击
大概是这样的:
function createLink(text, url, parentElement) {
var a = document.createElement('a');
var linkText = document.createTextNode(text);
a.appendChild(linkText);
a.href = url;
parentElement.appendChild(a);
}
然后,您可以使用此帮助器创建任意数量的链接:
createLink('16/04/16', 'http://www.hello.com/16/04/16', document.body);
收到带有日期的date.txt文件后,是否要为每个日期创建如下链接,但是你想把链接放在哪里呢?jQuery.get()函数是否有助于简化工作?您熟悉jQuery库吗?听起来你可能对JavaScript比较陌生,所以我想我应该提一下——如果你对使用jQuery没意见,你会得到不同的答案。如果你对这两种方式都不在乎,那可能值得一提。嘿,我在用jquery,我忘了提了!是的,我比较新,但这个问题真的让我卡住了,有什么想法吗?对不起,我导入了Jquery。忘了说我还认为你在大约两秒钟内就完全解决了我的问题!让我来实现它,然后用一个大勾号和一个+1的“父元素”返回给您。您指的是div id吗?@JamesMallon不,我指的是实际的DOM元素,例如
body
。如果愿意,可以将createLink
函数的最后一个参数更改为接受id,并将最后一行替换为document.getElementById(id).appendChild(a)
。希望有帮助!