Buongiorno a tutti,
ho un problema che non riesco a risolvere che mi sta facendo diventare matto.
ho un form di inserimento dati in un database mysql il quale ho necessità di inserire un Dependent Lookup in due campi.
Mi spiego meglio..... nel campo1 inserisco un valore nel campo2 mi comparirà un dynamic combobox riportante tutti i risultati presi da una tabella che hanno come indice l'id del campo1.
questo è il codice che ho inserito:
al caricamento della pagina:
mentre per l'inserimento del record:
il database è cosi strutturato:
tabella dove inserire il record
il campo MacroTipo prende i dati da questa tabella
mentre il campo Tipo da questa
Vi prego aiutatemi perche non ne riesco a venire a capo.
Grazie
ho un problema che non riesco a risolvere che mi sta facendo diventare matto.
ho un form di inserimento dati in un database mysql il quale ho necessità di inserire un Dependent Lookup in due campi.
Mi spiego meglio..... nel campo1 inserisco un valore nel campo2 mi comparirà un dynamic combobox riportante tutti i risultati presi da una tabella che hanno come indice l'id del campo1.
questo è il codice che ho inserito:
al caricamento della pagina:
PHP:
function initCityQuery() {
var country = editors.MacroTipo.getData();
if (country) {
editors.Tipo.setQueryFunction(function (term) {
return {
term: term,
fields: {
CountryCode: Attrezzature.fields.id_attrezzatura
}
};
});
}
}
if (editors.MacroTipo.getValue()) {
initCityQuery();
editors.Tipo.getRootElement().on('select2-init', initCityQuery);
}
editors.Tipo.setEnabled(editors.Tipo.getValue());
mentre per l'inserimento del record:
Codice:
if (sender.getFieldName() === 'MacroTipo') {
var Attrezzature_Tipo = sender.getData();
editors.Tipo
.setData(null)
.setEnabled(Attrezzature_Tipo);
if (Attrezzature_Tipo) {
editors.Tipo.setQueryFunction(function (term) {
return {
term: term,
fields: {
Attrezzature: Attrezzature_Tipo.fields.id
}
};
});
}
}
il database è cosi strutturato:
tabella dove inserire il record
Codice:
CREATE TABLE `Elenco_Attrezzature` (
`ID` INT(11) NOT NULL AUTO_INCREMENT,
`Regione` VARCHAR(30) NOT NULL,
`Provincia` VARCHAR(100) NOT NULL,
`Comitato` VARCHAR(100) NOT NULL,
`MacroTipo` VARCHAR(100) NOT NULL,
`Tipo` VARCHAR(100) NOT NULL,
`Quantita` VARCHAR(100) NOT NULL,
`Allocazione` VARCHAR(100) DEFAULT NULL,
`Disponibile` VARCHAR(5) DEFAULT NULL,
`Note` TEXT,
`competenza` VARCHAR(30) NOT NULL,
PRIMARY KEY (`ID`)
) ENGINE=INNODB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8
il campo MacroTipo prende i dati da questa tabella
Codice:
CREATE TABLE `Attrezzature_Tipo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nome` varchar(100) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8
mentre il campo Tipo da questa
Codice:
CREATE TABLE `Attrezzature` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nome` varchar(100) NOT NULL,
`id_attrezzatura` int(11) NOT NULL,
PRIMARY KEY (`id`),
KEY `id_attrezzatura` (`id_attrezzatura`),
CONSTRAINT `Attrezzature_Tipo_ibfk_1` FOREIGN KEY (`id_attrezzatura`) REFERENCES `Attrezzature_Tipo` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8
Vi prego aiutatemi perche non ne riesco a venire a capo.
Grazie