0
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,我不知道为什么。Uncaught TypeError: undefined is not a function 当我调用这个函数 correlativo(); 我收到此错误,我不知道为什么;(,请帮助我,我需要很多解决方案

4

3 回答 3

1

这很可能是由于浏览器“功能”创建了与页面上的每个元素相对应的全局变量,并将元素的 ID 作为变量名称。

如果您的页面上有一个带有 ID 的元素correlativo(您可能会在执行 时这样做getElementById('correlativo')),这将有效地覆盖您的声明function correlativo ...,导致当您尝试从 执行它时它不存在guardarOt

TLDR:将您的函数名称更改为correlativo其他名称,它应该可以正常工作。

于 2013-01-24T20:39:58.473 回答
0

您有一个名为 的函数和一个变量correlativo。改变其中之一。

您还拥有nuevoAjax未在提供的代码中定义的内容。确保这是一个函数。不是变量。

于 2013-01-24T20:37:25.727 回答
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;
};
于 2013-01-24T20:37:42.917 回答