我正在尝试从localhost文件(下载的html文件)中读取一个字符,并在if / else语句中使用它。
这是我在网上找到的只有适度修改的代码。它成功地指定了指定的字符并在单击其中一个按钮时显示它,但是当我尝试在if / else语句中使用它时(通过单击操作按钮),我没有成功。应该发生什么,是if / else语句使用该字符来确定如何修改var mywin中的window.open语句。我不确定如何在if / else语句中使用blob。谢谢你的帮助。
'功能工作()'是我被困的地方。
以下是源文件的代码(下载的html网页)
<small><a href="http://192.168.089/30000"></a></small><a href="http://192.168.089/30000/0101101001011010">0101101001011010</a><p>
这是我正在编写的html文件的代码,它试图使用if / else语句。
<!DOCTYPE html>
<HTML>
<HEAD>
<script>
function job(){
var action;
if (blob = '0') {
action = '06';
} else {
action = '05';
}
var mywin = window.open('http://192.168.0.89/30000/' +action,'','');
setTimeout(function() { mywin.close();}, 3000);
}
</script>
<style>
#byte_content {
margin: 5px 0;
max-height: 100px;
overflow-y: auto;
overflow-x: hidden;
}
#byte_range { margin-top: 5px; }
</style>
<input type="file" id="files" name="file" /> Read bytes:
<span class="readBytesButtons">
<button data-startbyte="89" data-endbyte="89">Relay 1</button>
<button data-startbyte="90" data-endbyte="90">Relay 2</button>
<button data-startbyte="91" data-endbyte="91">Relay 3</button>
<button data-startbyte="89" data-endbyte="104">All Relays</button>
<button>entire file</button>
<input type=submit value='Action' onclick='job();' />
</span>
<div id="byte_range"></div>
<div id="byte_content"></div>
<script>
function readBlob(opt_startByte, opt_stopByte) {
var files = document.getElementById('files').files;
if (!files.length) {
alert('Please select a file!');
return;
}
var file = files[0];
var start = parseInt(opt_startByte) || 0;
var stop = parseInt(opt_stopByte) || file.size - 1;
var reader = new FileReader();
// If we use onloadend, we need to check the readyState.
reader.onloadend = function(evt) {
if (evt.target.readyState == FileReader.DONE) { // DONE == 2
document.getElementById('byte_content').textContent = evt.target.result;
document.getElementById('byte_range').textContent =
['Read bytes: ', start + 1, ' - ', stop + 1,
' of ', file.size, ' byte file'].join('');
}
};
var blob = file.slice(start, stop + 1);
reader.readAsBinaryString(blob);
}
document.querySelector('.readBytesButtons').addEventListener('click', function(evt) {
if (evt.target.tagName.toLowerCase() == 'button') {
var startByte = evt.target.getAttribute('data-startbyte');
var endByte = evt.target.getAttribute('data-endbyte');
readBlob(startByte, endByte);
}
}, false);
</script>