2013-04-25 5 views
-2

는 CODE에게자바 스크립트가 정의되지 않았습니까? catch되지 않은 형식 오류 :

현재 업데이트 과정에서 오류가 난 정말 문제가 될 수있는 모르는

정의되지 않은

의 특성 'id_cursa'을 읽을 수 없습니다를 ???

function locurilibere(data, callback) { 
var URL = Path + 'rezervaribilete/locurilibere/' + data; 
$.get(URL, function(obj) { 
if (obj.raspuns === "nu") { 
callback(true); 
} else { 
callback(false); 
} 
}, 'json'); 
} 

function populateCurseDus(de_la, pana_la, data_plecarii) { 
var data = de_la + "-" + pana_la + "-" + data_plecarii; 
$.get(Path + 'rezervaribilete/listCurseDus/' + data, function(o) { 
for (var i = 0; i < o.length; i++) { 
var id_cursa = o[i].id_cursa; 
var datalocuri = id_cursa + "-" + data_plecarii; 
locurilibere(datalocuri, function(result){ 
if (result) { 
$('#cursedus tbody').append('<tr style="background:red;"><td><input type="radio" name="id_cursadus" value="' + o[i].id_cursa + '" disabled></td><td>' + o[i].cod_cursa + '</td><td>' + o[i].de_la + '</td><td>' + o[i].pana_la + '</td><td>' + o[i].ora_plecare + '</td><td>' + o[i].ora_sosire + '</td><td>' + o[i].id_transportator + '</td><td>' + o[i].id_traseu + '</td></tr>'); 
} else { 
$('#cursedus tbody').append('<tr><td><input type="radio" name="id_cursadus" value="' + o[i].id_cursa + '"></td><td>' + o[i].cod_cursa + '</td><td>' + o[i].de_la + '</td><td>' + o[i].pana_la + '</td><td>' + o[i].ora_plecare + '</td><td>' + o[i].ora_sosire + '</td><td>' + o[i].id_transportator + '</td><td>' + o[i].id_traseu + '</td></tr>'); 
} 
}); 
} 
}, 'json'); 
} 
+2

변경 자리를 해결하기 위해, 다음 포스트 우리가 도와 줄 수있는 희망을 가질 수 있도록 코드. –

+0

두 번째 기능은 항상 첫 번째 이후에 호출됩니까? 코드를 게시하십시오. – nnnnnn

+0

누구도 코드를 전혀 보지 않고 어떻게 당신을 도울 것으로 기대합니까? – Brad

답변

1
때문에 Ajax 요청의 비동기 특성 예상대로 작동하지 않습니다

, 당신은 콜백이 buttonhook에 그것을

function freeseats(data, callback) { 
    var URL = Path + 'bookings/freeseats/' + data; 
    $.get(URL, function(obj) { 
     if (obj.raspuns === "nu") { 
      // alert("no"); 
      callback(true); 
     } else { 
      // alert("yes"); 
      callback(false); 
     } 
    }, 'json'); 
} 

// ********************************* second 
// ************************************** 
function populateDepartures(from, to, departure) { 
    var data = from + "-" + to + "-" + departure; 
    $.get(Path + 'booking/listDepartures/' + data, function(o) { 

     $.each(o, function(index, item) { 
      var id_flight = item.id_flight; 
      var dataseats = id_flight + "-" + departureDate; 

      freeseats(dataseats, function(result) { 
       if (result) { 
        alert("no more seats"); 
        $('#cursedus tbody') 
        .append('<tr style="background:red;"><td><input type="radio"   name="id_cursadus" value="' 
          + item.id_cursa 
          + '" disabled></td><td>' 
          + item.cod_cursa 
          + '</td><td>' 
          + item.de_la 
          + '</td><td>' 
          + item.pana_la 
          + '</td><td>' 
          + item.ora_plecare 
          + '</td><td>' 
          + item.ora_sosire 
          + '</td><td>' 
          + item.id_transportator 
          + '</td><td>' 
          + item.id_traseu + '</td></tr>'); 
       } else { 
        alert("there are free seats"); 
        $('#cursedus tbody') 
        .append('<tr><td><input type="radio" name="id_cursadus" value="' 
          + item.id_cursa 
          + '"></td><td>' 
          + item.cod_cursa 
          + '</td><td>' 
          + item.de_la 
          + '</td><td>' 
          + item.pana_la 
          + '</td><td>' 
          + item.ora_plecare 
          + '</td><td>' 
          + item.ora_sosire 
          + '</td><td>' 
          + item.id_transportator 
          + '</td><td>' 
          + item.id_traseu + '</td></tr>'); 
       } 
      }); 
     }); 
    }, 'json'); 
} 
0

내가 필요한 것을 해독했다고 생각합니다. 이 jsFiddle Link을보고이 질문에 대한 답변을 확인하십시오. 여기

코드입니다 :

var boolFlag = false; 
var firstFunc = function(){ 
    if(boolFlag === false){ 
     boolFlag = true; 
     return 'yes';  
    }else{ 
     boolFlag = false; 
     return 'no'; 
    } 
}; 


var secondFunc = function() { 
     return firstFunc(); 
}; 

$('#myButton').click(function(){ 
    if(secondFunc() == 'yes'){ 
     console.log('hello world, you said: YES'); 
    }else{ 
     console.log('hello universe, you said: NO'); 
    } 

}); 
관련 문제