0
미안이 목표로하는 스크립트를 만들려고 노력 중지에서는 setTimeout : 새로운 질서가있는 경우가 나던
- 확인 모든 X의 초 (기능 refreshIntervalId())
- 새가있는 경우 순서 (기능 refreshIntervalId2())와 시작하는 다른 함수에서 일부 작업을 수행 setTimeover
- 을 중지 드 setTimeover 다시
이 코드로 작동하지만, 타이머가 정지 결코 그것이 간부 유지하는 것이 달성 5 초마다 소리내어 읽는다.
어떻게 해결할 수 있는지 알고 계십니까? 사전
var refreshIntervalId, refreshIntervalId2;
$("input:text:visible:first").focus();
refreshIntervalId2 = (function() {
return {
update: function() {
var pedidoid, url;
clearInterval(refreshIntervalId);
pedidoid = $("#pedidoid").val();
url = Routing.generate("get_pedido", {
id: pedidoid
});
return $.getJSON(url, function(json) {
clearInterval(refreshIntervalId2);
if (json.entregado === 1) {
return location.reload(true);
}
});
}
};
})();
refreshIntervalId = (function() {
return {
update: function() {
var url;
url = Routing.generate("get_pedidos");
return $.getJSON(url, function(json) {
var imgsrc;
clearInterval(refreshIntervalId);
$(".hero-unit").children("h1").text("Pedido nuevo!");
$(".hero-unit").children("h2").text("");
imgsrc = "/images/uploads/" + json.pedido.material.foto;
$("#imagenpedidomaterial").attr("src", imgsrc);
$(".cajapuesto").css({
position: "absolute",
top: json.pedido.puesto.y + "px",
left: json.pedido.puesto.x + "px"
});
$(".cajapuesto").addClass(json.kolorea);
$("#divimagenmaterial").show("slow");
$("#divcodbar").show("slow");
$("#pedidoid").val(json.pedido.id);
return setInterval(refreshIntervalId2.update, 5000);
});
}
};
})();
$(document).ready(function() {
return setInterval(refreshIntervalId.update, 5000);
});
$(document.body).on("keypress", function(e) {
var $micodbar, url;
switch (e.which) {
case 13:
$("#divmaterialincorrecto").hide();
$micodbar = $("#checkcodbar").val();
url = Routing.generate("get_material", {
codbar: $micodbar
});
return $.ajax(url, {
type: "GET",
contentType: "application/json",
success: function(data) {
var datos;
if (data === "null") {
return $("#divmaterialincorrecto").show("slow");
} else {
datos = jQuery.parseJSON(data);
return $(".row").show("slow");
}
},
error: function(xhr, ajaxOptions, thrownError) {
console.log("Errorea");
alert(xhr.status);
return alert(thrownError);
}
});
}
});
Ey! 감사! 나는 변화를 만들고 작동하지만 지금은 또 다른 문제가있다. json 변수는 비어있다. getJSON 호출을 수행 할 때까지 기다리지 않는다. 코드 안에 항상 들어간다. http://pastebin.com/4nf7xbb9 – ikerib
@ ikerib 이것은 아마 AJAX의 비동기 적 특성 때문일 수 있습니다. 이것은 다른 질문에 유용 할 수 있습니다. – Joseph
문제가 백엔드 내에 있습니다. 모두에게 감사드립니다! – ikerib