Mon problème concerne jQuery .post et Joomla. J'ai un modèle avec une forme qui est dans l'une des zones d'accordéon (en utilisant l'accordéon jQuery UI). J'ai un type de bouton = soumettre dans le formulaire. Le formulaire html est généré via jQuery lorsqu'un utilisateur clique sur un bouton dans la zone accordéon. Lorsqu'un utilisateur clique sur le bouton d'envoi de formulaire, l'événement appelle jQuery.post, qui est alors censé appeler une fonction de sauvegarde dans le contrôleur, qui à son tour appelle une fonction de sauvegarde dans le modèle. L'URL de .post est index.php, et je sérialise() les entrées de formulaire - avec les éléments cachés, j'ai la tâche définie sur une fonction de sauvegarde qui se trouve dans le contrôleur, et le contrôleur est également défini.jQuery .post ne pas exécuter la tâche dans l'URL
Le problème est que la tâche de sauvegarde du contrôleur n'est pas appelée lorsque le bouton est cliqué, et que la fonction de sauvegarde sur db n'est pas utilisée dans le modèle. Après que l'utilisateur clique sur le bouton, la page redirige vers index.php (page d'accueil). Pas d'enregistrement dans la base de données.
Toute aide serait grandement appréciée.
éléments de formulaire template.php:
<input type="hidden" name="controller" value="controller" />
<input type="hidden" name="task" value="saveProgramUI" />'
js code:
jQuery('#new_program_form').submit(function() {
if (jQuery('#new_program_form').valid()) {
jQuery.post("index.php", jQuery("#new_program_form").serialize(), function(html){
alert("Data Loaded: " + html);
});
}
});
Code Controller:
function saveProgramUI(){
$program = JRequest::get('POST');
$model = & $this->getModel('pfm');
$model->saveProgramUI($program);
$resp = "Hello World!";
return $resp;
}
Code du modèle:
function saveProgramUI($program)
{
$programTableRow =& $this->getTable('programs');
// Bind the form fields to the programs table, save to db
if (!$programTableRow->save($program)) {
JError::raiseError(500, 'Error saving program');
}
}
Vous devriez accepter la réponse à vos questions. – SLaks
modèle.éléments de formulaire php: ' – netefficacy
newbie ... comment faire J'accepte la réponse? – netefficacy