我在 JavaScript 和 HTML 方面只有两天大。我使用 C 代码创建了一个命名管道,并且能够将字符写入其中。命名管道显示为名为“xyz”的文件。现在我正在尝试使用 HTML + JavaScript 读取这个文件,并访问这些字符。我想检查该命名管道文件上是否出现字符“c”。我现在正在使用来自 Ubuntu 终端的 echo 命令写入“xyz”。我能够读取字符并在 HTML 窗口上显示,但比较不起作用。以下是我的代码,在“displayContents()”函数中的语句
if('c' == ch)
el.innerHTML = 'z';
else;
即使文件“xyz”只有“c”作为其内容,它也始终为假。当文件具有'c'时,我期望'z'作为输出,否则浏览器窗口上的内容本身。怎么做,请指出我做错了什么?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Read File (via AJAX)</title>
<script type="text/javascript">
var reader = new XMLHttpRequest() || new ActiveXObject('MSXML2.XMLHTTP');
var el;
function loadFile()
{
reader.open('get', 'xyz', true);
reader.onreadystatechange = displayContents;
reader.send(null);
}
function displayContents()
{
if(reader.readyState == 4)
{
var el = document.getElementById('main');
ch = reader.responseText;
if('c' == ch)
el.innerHTML = 'z';
else;
el.innerHTML = ch;
}
}
function delay_ms(delay)
{
var now = new Date();
var desiredTime = new Date().setMilliseconds(now.getMilliseconds() + delay);
while (now < desiredTime)
{
now = new Date();
}
}
</script>
</head>
<div id="main"></div>
<body onload = "loadFile();"></body>
</html>