赋值Javascript中的左侧无效

时间:2016-12-19 10:30:12

标签: javascript

这是我打开弹出窗口和执行HTTP请求的代码:
HTTP请求还没有工作 这是我的代码:

window.onload = addElement;

function addElement() {
// create a new div element 
// and give it popup content 
var newDiv = document.createElement("div");
var texts;

xmlhttp = new XMLHttpRequest();

xmlhttp.onreadystatechange = 
function()
{

    if (xmlhttp.readyState == 4 && xmlhttp.status = 200)
    {
        texts = xmlhttp.responseText;
    }
    else
    {
        texts = 'Waiting for response...';
    }
}
xmlhttp.open("GET", "localhost", true);
xmlhttp.send();

newDiv.innerHTML += '<div id="popup" style=" position: fixed;top: 15%;width: 800px;height: 200px;margin: auto;z-index: 99999;display: block;left:25%;background-color: #fff;  border: 1px solid #ddd;  border-radius: 5px;  box-shadow: 0 1px 6px 4px #000;  overflow: hidden;   padding: 10px;"><div class="popup_body" style="  height: 160px;">' + texts + '</div><button style="padding: 10px;" class="close_button"onClick="closePopup()">Sluiten</button><button  style="padding: 10px;" class="close_button"onClick="tostoring()">Meer Informatie</button></div>';

// Add The Background cover
var BG = document.createElement("div");
//BG.style.background-color = 'black';
BG.style.width = '100%';
BG.style.height = '100%';
BG.style.background = 'black';
BG.style.position = 'fixed';
BG.style.top = '0';
BG.style.left = '0';
BG.style.opacity = '0.7';
BG.style.zIndex = '99900';
BG.style.display = 'none';
BG.setAttribute("id", "bgcover");

// add the newly created elements and its content into the DOM 
document.body.appendChild(BG);
document.body.insertBefore(newDiv, BG);
// open popup onload

openPopup();
}

function openPopup() {
  var el = document.getElementById('popup');
  var BG = document.getElementById('bgcover');
  el.style.display = 'block';
  BG.style.display = 'block';
}

function tostoring() {
     window.location.href='http://localhost/Sms%20management%20systeem/testing/storing.php';
 }

function closePopup() {
  var el = document.getElementById('popup');
  var BG = document.getElementById('bgcover');
  el.style.display = 'none';
  BG.style.display = 'none';
}

这个错误是什么意思?
我该如何解决这个错误呢? 我被卡住了,因为我的代码在出现此错误时无法正常工作 我知道这可能是if声明,但我不知道出了什么问题。

2 个答案:

答案 0 :(得分:1)

xmlhttp.status = 200应为xmlhttp.status === 200
我对这两个值的比较犯了一个错误 谢谢@Francois wahl。

答案 1 :(得分:-1)

此错误是由运算符优先级引起的:

&&的优先级高于=所以:

(xmlhttp.readyState == 4 && xmlhttp.status = 200)

被视为:

( (xmlhttp.readyState == 4 && xmlhttp.status) = 200)

左侧不是变量或属性,因此您无法指定它。

你真的不想分配给它。您正试图比较,并且您输了一个错字。

xmlhttp.status = 200应为xmlhttp.status == 200