function correlativo(sucursal){
var tipo=document.getElementById('tipo').value;
var correlativo= document.getElementById('correlativo')
var ajax=nuevoAjax();
ajax.open("POST", "../ajax/correlativo_ajax.php", true);
ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajax.send("tipo="+tipo+"&sucursal="+sucursal);
ajax.onreadystatechange=function()
{
if (ajax.readyState==4)
{
var respuesta=ajax.responseXML;
correlativo.innerHTML=respuesta.getElementsByTagName("correlativo")[0].childNodes[0].data;
}
}
}
function guardarOt(){
//
var sucursal_ciudad = document.getElementById('sucursal_ciudad').value;
correlativo(sucursal_ciudad); //This line i get the ERROR
}
我有这个错误:C,我不知道为什么。 未捕获的TypeError:undefined不是函数 当我调用这个函数correlativo();我得到这个错误我不知道为什么;(,请帮助我需要很多解决方案
答案 0 :(得分:1)
由于browser "feature"创建了与页面上每个元素相对应的全局变量,并且元素的ID作为变量名称,因此很可能发生这种情况。
如果您的网页上有一个ID为correlativo
的元素(您执行getElementById('correlativo')
后可能会这样做),这会有效地覆盖您function correlativo ...
的声明,从而导致它当您尝试从guardarOt
执行它时不存在。
TLDR:将correlativo
函数的名称更改为其他名称,它应该可以正常工作。
答案 1 :(得分:0)
您有一个名为correlativo
的函数和变量。改变其中一个。
此外,您的nuevoAjax
未在提供的代码中定义。确保这是一个功能。不是变量。
答案 2 :(得分:0)
你必须缺少nuevoAjax。
function nuevoAjax(){
var xmlhttp=false;
try {
mlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
};