Ich habe eine Funktion, die ein Objekt aus einigen Sachen in einer Datenbank erstellt. Ajax behandelt die Anfrage nach Daten, die dann im JSON-Format analysiert und in die Funktion eingespeist werden. Ich überprüfe etwas (if-Anweisungen und was nicht) und gebe es dann an einen anderen Bereich des Codes zurück.Rückgabe eines Objekts mit Werten, aber Werte sind nicht definiert
Allerdings, wenn es die Rückkehr kann ich es console.log()
und sehe, dass es sich um ein Object { }
ich das Objekt klicken und die Variablen im Dialogfeld angezeigt bekommen (und es zeigt, dass sie haben Werte für jede Eigenschaft angefügt), aber wenn zu tun versuchen, ein
result = alertFilled(type,mon,year,data.tableField);
console.log(result.table);
I undefined
Meine Funktion, das Objekt zu behandeln erhalten und zu schaffen
function alertFilled (type,mon,year,tableField){
var alertObj = {};
$.ajax({
method: 'POST',
url: 'ajaxScripts/checkAlertFilled.php',
data: {
'type': type,
'mon': mon,
'year': year,
'id': tableField,
'ajax': true
},
// return appropriate message
success: function (data)
{
var parsed = JSON.parse(data);
alertObj.table = type;
alertObj.tableField = tableField;
alertObj.monthYear = parsed.mthYr;
alertObj.month = "";
alertObj.year = "";
alertObj.echoFilled = false;
alertObj.bravoFilled = false;
var index = [];
for (var x in parsed) {
index.push(x);
}
alertObj.month = parsed[index[2]];
alertObj.year = parsed[index[3]];
var mthYrLower = parsed[index[0]].toString();
if (mthYrLower.toLowerCase().indexOf("echo") >= 0){
if ($.trim(parsed[index[1]]) !== "")
{
alertObj.echoFilled = true;
}
else {
alertObj.echoFilled = false;
}
}
if (mthYrLower.toLowerCase().indexOf("bravo") >= 0){
if ($.trim(parsed[index[1]]) !== "")
{
alertObj.bravoFilled = true;
}
else {
alertObj.bravoFilled = false;
}
}
counter++;
}
});
return alertObj;
}
checkAlertFilled.php Kosten
type = "Table1" or "Table2"
tableField = "Column1" or "Column2" or "Column3"
monthYear = "JUL2016 ECHO" as an example
month = "JUL"
year = "2016"
und anderen Variablen
echoFilled = "true" or "false"
bravoFilled = "true" or "false"
Bitte schreiben Sie einen Code, was Sie in checkAlertFilled.php Rückkehr – eronax59