Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Product per SelectBox und Attribute per Ajax nach laden ! 
 
Hoscakal
Jr. Member
 
Total Posts:  1
Joined:  2013-02-19
 

Hallo Leute,

Ich bin neu in Magento Welt,

ich habe folgendes Problem:

Ich muss für einen Druckerei ein dynamisches Produkt-Preis kalkulieren,
das heisst je nach ausgewählten papierart und Papierqualität soll der Preis basieren auf Magento anlegten Attribute kalkuliert werden.
das funktioniert schon eigentlich,

aber damit der kalkulierte Preis richtig ist. muss ich die Attrubute je nach ausgewähltem Produkt dynamich laden.
ich möchte also:

dass man ein Selectbox hat wo die Artikeln drinne sind,
beim (on)Change soll per Ajax dazu gehörigen Attribute geholt werden.

kann jemand mir sagen ? wie ich das ambesten implementieren kann ?
ich freue mich auf jeden Link , Tutorial, Idee usw.

Danke.

 
Magento Community Magento Community
Magento Community
Magento Community
 
Siggi_Schmitz
Enthusiast
 
Avatar
Total Posts:  811
Joined:  2011-07-03
 

Du schreibst dir ein Modul mit einem eigenen Controller. Dort drin eine Methode die das gewünschte Attribut o.ä. zurückgibt. Diese Methode rufst du beim onclick mit Ajax auf.

Beispiel:

HTML - Element mit javascript - Funktion:

<input type="checkbox" name="bla" onclick="getAttribute()" />

<
script type="text/javascript">
function 
getAttribute() {
    
new Ajax.Request('http://yourdomain.de/yourcontroller/yourmethod/'
    
{
        method
'post',
        
onComplete: function(nom,json){
            
var response nom.responseText//hier hast du jetzt die Rückgabe in var response
        
}
    }
);    
}
</script>

Dann legst du dir in deinem Modul nen eigenen Controller an (yourcontroller) mit ner Methode (yourmethodAction), die Daten folgendermaßen zurückgibt:

public function youmethodAction()
{
        $output 
''// hier halt das gewünschte Attribut laden oder was auch immer.
        
$this->getResponse()
               ->
setHttpResponseCode(200)
               ->
setHeader('Pragma''public'true)
               ->
setHeader('Cache-Control''must-revalidate, post-check=0, pre-check=0'true)
               ->
setHeader('Content-type''text/x-json'true)
               ->
setHeader('Last-Modified'date('r'))
               ->
setBody($output);   

}

Hoffe dir hilft das. Kannst beim AJAX - Request natürlich auch noch Parameter übergeben die du dann in der Methode mit Mage::app()->getRequest()->getPost() auslesen kannst.

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top