当谈到 Js 时,我是一个完整的新手,试图制作一些非常简单的脚本,该脚本使用 ajax 从我的服务器上的 txt 文档中获取一串二进制数字,然后将其放入字符串 var 并更改第一个 0在循环中使用 if 构造在 1 中找到。
问题是,当页面尝试执行 if 行时,它只是冻结。从循环中取出相同的 if 构造,脚本执行没有问题,所以我猜它与那个或/以及首先对 Js 脚本如何工作的一些基本误解有关。
这是脚本:
function loadPos()
{
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function()
{
if (this.readyState == 4 && this.status == 200)
document.getElementById("demo").innerHTML = this.responseText;
};
xhttp.open("GET", "posizioni.txt", true);
xhttp.send();
}
function takeFirst()
{
var i=0;
var check=false;
var oldPos=[];
loadPos();
oldPos = document.getElementById("demo").innerHTML;
for(i=0;!check||i<10;i++)
{
if(oldPos[i]=="0")
{
oldPos[i]="1";
check=true;
}
}
document.getElementById("demo").innerHTML=oldPos;
}
如果没有它也能达到同样的效果,我看不到它有任何使用循环。请将您的功能更新为以下内容:
function takeFirst()
{
loadPos();
var oldPos = document.getElementById("demo").innerHTML;
if(oldPos.indexOf("0") > -1){
oldPos = oldPos.replace('0', '1');
}
document.getElementById("demo").innerHTML = oldPos;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句