it-swarm.com.de

com_Ajax - send POST Request

Ich bin neu in JavaScript. Ich erstelle mein Modul. Ich versuche, Daten aus einem HTML-Formular zu senden. Ich kann com_ajax nicht verwenden ... Ich erstelle eine neue Klasse in helper.php.

public static function getAjax() {

    jimport('joomla.application.module.helper');
    $input  = JFactory::getApplication()->input;
    $module = JModuleHelper::getModule('mymodulename');
    $params = new JRegistry();
    $params->loadString($module->params);
}

Ich muss Daten an default.php Senden.

Ich habe ein Skript geschrieben, um Daten an einen mod_name.php Zu senden. JS HIER:

<script>
 jQuery.noConflict();
   function function1() {
    var data = jQuery("lol").serialize();
    jQuery.ajax({
        url: "index.php?option=com_ajax&module=auction&method=post&format=json", 
        type: "POST",
        data: data, 
        success: function(data){ 
            alert(data); 
        }
    });
};
</script>

FOR

<form method="post" action="this.form.submit();" name="form1" id="lol">
    <input type="text" name="price" onclick="function1();">
</form>

Habe ich das Richtige getan? Und wie kann ich Daten in default.php Erhalten?

1
Alex

Das Problem liegt in Ihrer URL. Das Richtige ist:

jQuery.ajax({
        url: "index.php?option=com_ajax&module=auction&method=FUNCTIONNAME&format=json", 
        type: "POST",
        data: data, 
        success: function(data){ 
            alert(data); 
        }
    });

in Ihrem Fall lautet der FUNKTIONSNAME get.

Und Ihre Funktion als Helfer des Moduls muss mit "Ajax" enden. Ex.

public myFunctionAjax(){
  //Do something
}

in diesem Fall lautet die URL index.php?option=com_ajax&module=MODULENAME&method=myFunction&format=json.

1
CyberHollow